/* LightRP Smooth Forum App Upgrade */

.lrp-progress {
    position: fixed;
    left: 0;
    top: 0;
    height: 3px;
    width: 0%;
    z-index: 99999;
    background: linear-gradient(90deg, #39ff55, #4f46e5, #8b5cf6);
    box-shadow: 0 0 18px rgba(79, 70, 229, 0.85);
    opacity: 0;
    transition: width 0.35s ease, opacity 0.2s ease;
}

.lrp-progress.active {
    opacity: 1;
    width: 82%;
    animation: lrp-progress-pulse 1.2s ease infinite;
}

html:not(.lrp-loading) .lrp-progress {
    width: 100%;
}

@keyframes lrp-progress-pulse {
    0% { filter: brightness(1); }
    50% { filter: brightness(1.55); }
    100% { filter: brightness(1); }
}

body.page-leaving main.layout {
    opacity: 0;
    transform: translateY(14px) scale(0.992);
    filter: blur(5px);
    transition: opacity 0.18s ease, transform 0.18s ease, filter 0.18s ease;
}

body.page-entering main.layout {
    animation: lrp-page-in 0.28s ease both;
}

@keyframes lrp-page-in {
    from {
        opacity: 0;
        transform: translateY(16px) scale(0.992);
        filter: blur(5px);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
        filter: blur(0);
    }
}

.lrp-toast-wrap {
    position: fixed;
    right: 22px;
    bottom: 96px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    z-index: 99998;
    pointer-events: none;
}

.lrp-toast {
    min-width: 260px;
    max-width: 420px;
    padding: 14px 16px;
    border-radius: 14px;
    background: rgba(10, 14, 24, 0.96);
    border: 1px solid rgba(255,255,255,0.14);
    box-shadow: 0 18px 45px rgba(0,0,0,0.45);
    color: white;
    font-size: 14px;
    font-weight: 900;
    opacity: 0;
    transform: translateX(28px);
    transition: all 0.22s ease;
}

.lrp-toast.show {
    opacity: 1;
    transform: translateX(0);
}

.lrp-toast.success {
    border-color: rgba(57,255,85,0.35);
    box-shadow: 0 18px 45px rgba(0,0,0,0.45), 0 0 24px rgba(57,255,85,0.12);
}

.lrp-toast.error {
    border-color: rgba(255,85,85,0.40);
    box-shadow: 0 18px 45px rgba(0,0,0,0.45), 0 0 24px rgba(255,85,85,0.12);
}

.forum-card,
.thread-card,
.profile-card,
.stat-card,
.reply-card,
.snapshot-row,
.auth-card,
.panel {
    position: relative;
}

.forum-card::before,
.thread-card::before,
.profile-card::before,
.stat-card::before,
.reply-card::before,
.snapshot-row::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    background: radial-gradient(circle at var(--mx, 50%) var(--my, 50%), rgba(112, 98, 255, 0.18), transparent 34%);
    opacity: 0;
    transition: opacity 0.18s ease;
}

.forum-card:hover::before,
.thread-card:hover::before,
.profile-card:hover::before,
.stat-card:hover::before,
.reply-card:hover::before,
.snapshot-row:hover::before {
    opacity: 1;
}

.forum-card,
.thread-card,
.profile-card,
.stat-card,
.reply-card {
    transition: transform 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
}

.forum-card:hover,
.thread-card:hover,
.profile-card:hover,
.stat-card:hover,
.reply-card:hover {
    transform: translateY(-3px);
    border-color: rgba(115, 100, 255, 0.35);
    box-shadow: 0 18px 42px rgba(0,0,0,0.35), 0 0 26px rgba(79,70,229,0.12);
}

button,
.btn,
.navbar a,
.desktop-nav a,
.mobile-nav a {
    transition: transform 0.12s ease, background-color 0.12s ease, border-color 0.12s ease, color 0.12s ease, box-shadow 0.12s ease;
}

button:active,
.btn:active {
    transform: scale(0.97);
}

.input-active {
    border-color: rgba(90, 110, 255, 0.28) !important;
    box-shadow: 0 0 28px rgba(79,70,229,0.10) !important;
}

form button[disabled] {
    opacity: 0.68;
    cursor: wait;
}

.lrp-loading a,
.lrp-loading button {
    cursor: progress;
}

@media (max-width: 800px) {
    .lrp-toast-wrap {
        left: 12px;
        right: 12px;
        bottom: 90px;
    }

    .lrp-toast {
        min-width: 0;
        width: 100%;
    }

    body.page-leaving main.layout {
        transform: translateY(8px);
    }
}



/* V5 notification dropdown */
.notification-wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.notification-wrap .notification-pill {
    border: 1px solid rgba(255,255,255,0.10);
    cursor: pointer;
}

.notification-popover {
    position: absolute;
    right: 0;
    top: calc(100% + 12px);
    width: 380px;
    max-width: calc(100vw - 28px);
    background: rgba(8, 11, 20, 0.98);
    border: 1px solid rgba(255,255,255,0.14);
    border-radius: 16px;
    box-shadow: 0 24px 70px rgba(0,0,0,0.65);
    z-index: 5000;
    opacity: 0;
    transform: translateY(-8px) scale(0.98);
    pointer-events: none;
    transition: opacity 0.16s ease, transform 0.16s ease;
    overflow: hidden;
}

.notification-popover.open {
    opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: all;
}

.notification-popover-head {
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 16px;
    border-bottom: 1px solid rgba(255,255,255,0.09);
    background: rgba(14, 18, 30, 0.98);
}

.notification-popover-head b {
    font-size: 15px;
}

.notification-popover-head a {
    color: #9da8ff;
    font-size: 12px;
    font-weight: 900;
}

.notification-popover-list {
    max-height: 360px;
    overflow-y: scroll;
    padding: 8px;
}

.notification-item {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 12px;
    border-radius: 12px;
    border: 1px solid transparent;
    background: rgba(255,255,255,0.04);
    margin-bottom: 8px;
}

.notification-item:hover {
    background: rgba(79,69,230,0.18);
    border-color: rgba(79,69,230,0.35);
}

.notification-item.unread {
    border-color: rgba(57,255,85,0.25);
    background: rgba(57,255,85,0.06);
}

.notification-item b {
    font-size: 13px;
    color: white;
}

.notification-item span {
    color: rgba(255,255,255,0.64);
    font-size: 12px;
    line-height: 1.35;
}

.notification-item small,
.notification-empty {
    color: rgba(255,255,255,0.44);
    font-size: 11px;
    font-weight: 800;
}

.notification-empty {
    padding: 16px;
    text-align: center;
}

/* Better app flow polish */
main.layout {
    will-change: opacity, transform, filter;
}

.page-head,
.hero,
.grid,
.panel {
    animation: lrp-soft-rise 0.28s ease both;
}

@keyframes lrp-soft-rise {
    from {
        opacity: 0;
        transform: translateY(8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 700px) {
    .notification-popover {
        position: fixed;
        left: 12px;
        right: 12px;
        top: 82px;
        width: auto;
        max-width: none;
    }
}



/* V6 thread image + sidebar fix */

.forum-image-link {
    display: block;
    width: fit-content;
    max-width: 100%;
    margin: 14px 0;
}

.content-body .forum-image,
.editor-preview .forum-image {
    display: block;
    max-width: min(100%, 820px);
    max-height: 720px;
    border-radius: 16px;
    object-fit: contain;
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 18px 45px rgba(0,0,0,0.36);
    background: rgba(0,0,0,0.22);
}

.thread-info-card {
    position: sticky;
    top: 110px;
    align-self: start;
    background:
        radial-gradient(circle at 20% 0%, rgba(79,70,229,0.20), transparent 34%),
        rgba(10, 14, 24, 0.90);
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 20px;
    padding: 18px;
    box-shadow: 0 20px 55px rgba(0,0,0,0.38);
    backdrop-filter: blur(18px);
}

.thread-info-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 14px;
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(255,255,255,0.09);
    margin-bottom: 14px;
}

.thread-info-header h3 {
    margin: 0;
    color: white;
    font-size: 18px;
    letter-spacing: 0;
    text-transform: none;
}

.thread-info-header span {
    display: block;
    margin-top: 4px;
    color: rgba(255,255,255,0.52);
    font-size: 12px;
    font-weight: 800;
}

.thread-status-pill {
    min-width: 72px;
    height: 30px;
    border-radius: 999px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    font-size: 12px !important;
    font-weight: 900;
    margin-top: 0 !important;
}

.thread-status-pill.open {
    color: #39ff55 !important;
    background: rgba(57,255,85,0.10);
    border: 1px solid rgba(57,255,85,0.22);
}

.thread-status-pill.locked {
    color: #ffcc66 !important;
    background: rgba(255,190,70,0.10);
    border: 1px solid rgba(255,190,70,0.22);
}

.thread-info-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.thread-info-stat {
    min-height: 74px;
    border-radius: 14px;
    padding: 13px;
    background: rgba(0,0,0,0.22);
    border: 1px solid rgba(255,255,255,0.08);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.thread-info-stat.wide {
    grid-column: 1 / -1;
}

.thread-info-stat span {
    color: rgba(255,255,255,0.52);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.thread-info-stat b {
    color: #39ff55;
    font-size: 18px;
    margin-top: 6px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.thread-info-stat.wide b {
    color: white;
    font-size: 15px;
}

.thread-info-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 9px;
    margin-top: 14px;
}

.thread-info-actions .btn {
    width: 100%;
    height: 42px;
}

.thread-layout {
    align-items: start;
}

@media (max-width: 980px) {
    .thread-info-card {
        position: relative;
        top: auto;
        order: -1;
    }
}



/* V7 cleanup, notification, profile and homepage fixes */

.topbar {
    position: relative;
    z-index: 9000;
}

.notification-popover {
    z-index: 20000 !important;
    overflow: hidden !important;
}

.notification-popover-list {
    scrollbar-width: thin;
    scrollbar-color: rgba(100, 100, 130, 0.45) transparent;
}

.notification-popover-list::-webkit-scrollbar,
.editor-preview::-webkit-scrollbar,
.reports-scroll::-webkit-scrollbar {
    width: 6px;
}

.notification-popover-list::-webkit-scrollbar-track,
.editor-preview::-webkit-scrollbar-track,
.reports-scroll::-webkit-scrollbar-track {
    background: transparent;
}

.notification-popover-list::-webkit-scrollbar-thumb,
.editor-preview::-webkit-scrollbar-thumb,
.reports-scroll::-webkit-scrollbar-thumb {
    background: rgba(110, 110, 140, 0.42);
    border-radius: 999px;
}

.forum-compact-hero {
    min-height: 0;
    margin-top: 22px;
    padding: 26px 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 22px;
    overflow: hidden;
}

.forum-compact-hero h1 {
    margin: 12px 0 8px;
    font-size: clamp(34px, 4vw, 54px);
    letter-spacing: -1.8px;
}

.forum-compact-hero p {
    margin: 0;
    color: rgba(255,255,255,0.68);
    font-size: 17px;
    font-weight: 800;
}

.forum-hero-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    flex-shrink: 0;
}

.forum-home-layout {
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: 18px;
    align-items: start;
    margin-top: 18px;
}

.compact-head {
    margin-top: 0;
}

.forum-category-list {
    margin-top: 0;
}

.forum-card-clean {
    grid-template-columns: 58px 1fr auto;
}

.forum-card-clean small {
    display: block;
    margin-top: 8px;
    color: rgba(255,255,255,0.45);
    font-weight: 800;
}

.latest-threads-panel {
    padding: 18px;
    position: sticky;
    top: 110px;
}

.latest-threads-panel h3 {
    margin: 0 0 12px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.68);
    font-size: 14px;
    letter-spacing: 0.7px;
}

.latest-thread-row {
    display: block;
    padding: 13px;
    border-radius: 12px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.07);
    margin-bottom: 9px;
}

.latest-thread-row:hover {
    background: rgba(79,69,230,0.16);
    border-color: rgba(79,69,230,0.30);
}

.latest-thread-row b {
    display: block;
    color: white;
    font-size: 14px;
    margin-bottom: 4px;
}

.latest-thread-row span {
    color: rgba(255,255,255,0.52);
    font-size: 12px;
    font-weight: 800;
}

.forum-signature {
    margin-top: 18px;
    padding: 14px 16px;
    border-top: 1px solid rgba(255,255,255,0.10);
    color: rgba(255,255,255,0.66);
    font-size: 13px;
    line-height: 1.55;
    background: rgba(255,255,255,0.025);
    border-radius: 0 0 14px 14px;
}

.profile-edit-layout {
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: 18px;
    align-items: start;
}

.profile-edit-form {
    padding: 24px;
}

.profile-preview {
    padding: 22px;
    position: sticky;
    top: 110px;
}

.profile-preview h3,
.profile-preview h4 {
    margin: 0 0 12px;
}

.profile-preview h4 {
    margin-top: 18px;
    color: rgba(255,255,255,0.72);
}

.profile-preview-card {
    text-align: center;
    padding: 18px;
    border-radius: 16px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
}

.profile-preview-card .avatar {
    width: 86px;
    height: 86px;
    margin: 0 auto 10px;
}

.profile-public-extra {
    padding: 24px;
    margin-top: 18px;
}

.form-label {
    color: rgba(255,255,255,0.68);
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.7px;
    margin-top: 6px;
}

@media (max-width: 1100px) {
    .forum-home-layout,
    .profile-edit-layout {
        grid-template-columns: 1fr;
    }

    .latest-threads-panel,
    .profile-preview {
        position: relative;
        top: auto;
    }
}

@media (max-width: 760px) {
    .forum-compact-hero {
        flex-direction: column;
        align-items: flex-start;
        padding: 22px;
    }

    .forum-hero-actions {
        width: 100%;
    }

    .forum-hero-actions .btn {
        flex: 1;
    }
}



/* V8 Full Profile Editor */

.profile-editor-shell {
    margin-bottom: 80px;
}

.profile-editor-grid {
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 18px;
    align-items: start;
}

.profile-editor-main,
.profile-live-preview,
.profile-editor-rich {
    padding: 24px;
}

.profile-editor-main h2,
.profile-live-preview h2,
.profile-editor-rich h2 {
    margin: 0 0 16px;
}

.profile-two-col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.profile-switch-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin: 8px 0 14px;
}

.profile-switch-row label {
    display: flex;
    gap: 10px;
    align-items: center;
    padding: 13px;
    border-radius: 12px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    color: rgba(255,255,255,0.76);
    font-weight: 900;
}

.profile-switch-row input {
    width: auto;
}

.profile-live-preview {
    position: sticky;
    top: 110px;
}

.public-profile-card {
    overflow: hidden;
    border-radius: 20px;
    background: rgba(8, 11, 20, 0.92);
    border: 1px solid rgba(255,255,255,0.12);
}

.public-profile-banner {
    height: 115px;
    background:
        radial-gradient(circle at 20% 20%, rgba(79,70,229,0.48), transparent 34%),
        linear-gradient(135deg, rgba(16,20,34,1), rgba(5,8,15,1));
    background-size: cover;
    background-position: center;
}

.public-profile-inner {
    padding: 0 20px 20px;
    text-align: center;
}

.public-profile-avatar {
    width: 104px;
    height: 104px;
    border-radius: 999px;
    object-fit: cover;
    border: 5px solid rgba(8,11,20,1);
    margin-top: -52px;
    background: #4f46e5;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 34px;
    font-weight: 900;
}

.public-profile-inner h3 {
    margin: 8px 0 4px;
    font-size: 24px;
}

.public-profile-inner > span {
    color: rgba(255,255,255,0.64);
    font-weight: 900;
}

.profile-preview-stats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 16px;
}

.profile-preview-stats div {
    padding: 12px;
    border-radius: 12px;
    background: rgba(255,255,255,0.05);
}

.profile-preview-stats b {
    display: block;
    color: #39ff55;
    font-size: 14px;
}

.profile-preview-stats small {
    display: block;
    margin-top: 3px;
    color: rgba(255,255,255,0.48);
    font-weight: 900;
}

.profile-preview-note {
    margin-top: 14px;
    padding: 14px;
    border-radius: 14px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
}

.profile-preview-note b,
.profile-preview-note span {
    display: block;
}

.profile-preview-note span {
    margin-top: 6px;
    color: rgba(255,255,255,0.58);
    font-size: 13px;
    line-height: 1.45;
    font-weight: 800;
}

.profile-save-bar {
    position: sticky;
    bottom: 18px;
    z-index: 50;
    margin-top: 18px;
    padding: 14px;
    border-radius: 18px;
    background: rgba(8, 10, 18, 0.94);
    border: 1px solid rgba(255,255,255,0.12);
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.45);
    backdrop-filter: blur(18px);
}

.profile-hero-card {
    margin-top: 24px;
    overflow: hidden;
    padding: 0;
}

.profile-hero-banner {
    height: 210px;
    background:
        radial-gradient(circle at 18% 10%, rgba(79,70,229,0.50), transparent 34%),
        radial-gradient(circle at 88% 90%, rgba(57,255,85,0.14), transparent 34%),
        linear-gradient(135deg, rgba(12,16,28,1), rgba(5,7,14,1));
    background-size: cover;
    background-position: center;
}

.profile-hero-content {
    padding: 0 26px 26px;
    display: grid;
    grid-template-columns: 136px 1fr auto;
    gap: 20px;
    align-items: end;
}

.profile-hero-avatar {
    width: 136px;
    height: 136px;
    border-radius: 999px;
    object-fit: cover;
    border: 6px solid rgba(8,10,18,1);
    margin-top: -68px;
    background: #4f46e5;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 44px;
    font-weight: 900;
}

.profile-hero-copy h1 {
    margin: 0;
    font-size: clamp(36px, 4vw, 58px);
}

.profile-hero-copy p {
    margin: 4px 0 12px;
    color: rgba(255,255,255,0.64);
    font-size: 18px;
    font-weight: 900;
}

.profile-hero-badges {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.profile-hero-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.profile-steam-card {
    margin-top: 18px;
    padding: 18px 22px;
}

.profile-steam-card span,
.profile-steam-card b {
    display: block;
}

.profile-steam-card b {
    margin-top: 6px;
    font-size: 18px;
}

/* Themes */
.theme-purple .profile-hero-banner,
.theme-purple .public-profile-banner {
    background:
        radial-gradient(circle at 20% 10%, rgba(168,85,247,0.65), transparent 34%),
        linear-gradient(135deg, #14091f, #060810);
}

.theme-green .profile-hero-banner,
.theme-green .public-profile-banner {
    background:
        radial-gradient(circle at 20% 10%, rgba(57,255,85,0.36), transparent 34%),
        linear-gradient(135deg, #06160c, #050810);
}

.theme-gold .profile-hero-banner,
.theme-gold .public-profile-banner {
    background:
        radial-gradient(circle at 20% 10%, rgba(255,190,70,0.44), transparent 34%),
        linear-gradient(135deg, #1d1304, #060810);
}

.theme-red .profile-hero-banner,
.theme-red .public-profile-banner {
    background:
        radial-gradient(circle at 20% 10%, rgba(255,70,70,0.44), transparent 34%),
        linear-gradient(135deg, #1a0606, #060810);
}

@media (max-width: 1100px) {
    .profile-editor-grid {
        grid-template-columns: 1fr;
    }

    .profile-live-preview {
        position: relative;
        top: auto;
    }

    .profile-hero-content {
        grid-template-columns: 1fr;
        text-align: center;
        justify-items: center;
    }

    .profile-hero-actions {
        justify-content: center;
    }
}

@media (max-width: 760px) {
    .profile-two-col,
    .profile-switch-row {
        grid-template-columns: 1fr;
    }

    .profile-save-bar {
        flex-direction: column;
    }

    .profile-save-bar .btn,
    .profile-save-bar button {
        width: 100%;
    }

    .profile-hero-banner {
        height: 150px;
    }
}



/* V8.1 Admin + Forum Profile Editor visibility */

.profile-hero-actions {
    min-width: 180px;
}

.profile-hero-actions .btn {
    min-width: 130px;
}

.profile-editor-shell {
    margin-bottom: 80px;
}

.profile-editor-grid {
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 18px;
    align-items: start;
}

.profile-editor-main,
.profile-live-preview,
.profile-editor-rich {
    padding: 24px;
}

.profile-editor-main h2,
.profile-live-preview h2,
.profile-editor-rich h2 {
    margin: 0 0 16px;
}

.profile-two-col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.profile-switch-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin: 8px 0 14px;
}

.profile-switch-row label {
    display: flex;
    gap: 10px;
    align-items: center;
    padding: 13px;
    border-radius: 12px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    color: rgba(255,255,255,0.76);
    font-weight: 900;
}

.profile-switch-row input {
    width: auto;
}

.profile-live-preview {
    position: sticky;
    top: 110px;
}

.public-profile-card {
    overflow: hidden;
    border-radius: 20px;
    background: rgba(8, 11, 20, 0.92);
    border: 1px solid rgba(255,255,255,0.12);
}

.public-profile-banner {
    height: 115px;
    background:
        radial-gradient(circle at 20% 20%, rgba(79,70,229,0.48), transparent 34%),
        linear-gradient(135deg, rgba(16,20,34,1), rgba(5,8,15,1));
    background-size: cover;
    background-position: center;
}

.public-profile-inner {
    padding: 0 20px 20px;
    text-align: center;
}

.public-profile-avatar {
    width: 104px;
    height: 104px;
    border-radius: 999px;
    object-fit: cover;
    border: 5px solid rgba(8,11,20,1);
    margin-top: -52px;
    background: #4f46e5;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 34px;
    font-weight: 900;
}

.public-profile-inner h3 {
    margin: 8px 0 4px;
    font-size: 24px;
}

.public-profile-inner > span {
    color: rgba(255,255,255,0.64);
    font-weight: 900;
}

.profile-preview-stats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 16px;
}

.profile-preview-stats div {
    padding: 12px;
    border-radius: 12px;
    background: rgba(255,255,255,0.05);
}

.profile-preview-stats b {
    display: block;
    color: #39ff55;
    font-size: 14px;
}

.profile-preview-stats small {
    display: block;
    margin-top: 3px;
    color: rgba(255,255,255,0.48);
    font-weight: 900;
}

.profile-preview-note {
    margin-top: 14px;
    padding: 14px;
    border-radius: 14px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
}

.profile-preview-note b,
.profile-preview-note span {
    display: block;
}

.profile-preview-note span {
    margin-top: 6px;
    color: rgba(255,255,255,0.58);
    font-size: 13px;
    line-height: 1.45;
    font-weight: 800;
}

.profile-save-bar {
    position: sticky;
    bottom: 18px;
    z-index: 50;
    margin-top: 18px;
    padding: 14px;
    border-radius: 18px;
    background: rgba(8, 10, 18, 0.94);
    border: 1px solid rgba(255,255,255,0.12);
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.45);
    backdrop-filter: blur(18px);
}

.profile-hero-card {
    margin-top: 24px;
    overflow: hidden;
    padding: 0;
}

.profile-hero-banner {
    height: 210px;
    background:
        radial-gradient(circle at 18% 10%, rgba(79,70,229,0.50), transparent 34%),
        radial-gradient(circle at 88% 90%, rgba(57,255,85,0.14), transparent 34%),
        linear-gradient(135deg, rgba(12,16,28,1), rgba(5,7,14,1));
    background-size: cover;
    background-position: center;
}

.profile-hero-content {
    padding: 0 26px 26px;
    display: grid;
    grid-template-columns: 136px 1fr auto;
    gap: 20px;
    align-items: end;
}

.profile-hero-avatar {
    width: 136px;
    height: 136px;
    border-radius: 999px;
    object-fit: cover;
    border: 6px solid rgba(8,10,18,1);
    margin-top: -68px;
    background: #4f46e5;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 44px;
    font-weight: 900;
}

.profile-hero-copy h1 {
    margin: 0;
    font-size: clamp(36px, 4vw, 58px);
}

.profile-hero-copy p {
    margin: 4px 0 12px;
    color: rgba(255,255,255,0.64);
    font-size: 18px;
    font-weight: 900;
}

.profile-hero-badges {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.profile-hero-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.profile-steam-card {
    margin-top: 18px;
    padding: 18px 22px;
}

.profile-steam-card span,
.profile-steam-card b {
    display: block;
}

.profile-steam-card b {
    margin-top: 6px;
    font-size: 18px;
}

.theme-purple .profile-hero-banner,
.theme-purple .public-profile-banner {
    background:
        radial-gradient(circle at 20% 10%, rgba(168,85,247,0.65), transparent 34%),
        linear-gradient(135deg, #14091f, #060810);
}

.theme-green .profile-hero-banner,
.theme-green .public-profile-banner {
    background:
        radial-gradient(circle at 20% 10%, rgba(57,255,85,0.36), transparent 34%),
        linear-gradient(135deg, #06160c, #050810);
}

.theme-gold .profile-hero-banner,
.theme-gold .public-profile-banner {
    background:
        radial-gradient(circle at 20% 10%, rgba(255,190,70,0.44), transparent 34%),
        linear-gradient(135deg, #1d1304, #060810);
}

.theme-red .profile-hero-banner,
.theme-red .public-profile-banner {
    background:
        radial-gradient(circle at 20% 10%, rgba(255,70,70,0.44), transparent 34%),
        linear-gradient(135deg, #1a0606, #060810);
}

@media (max-width: 1100px) {
    .profile-editor-grid {
        grid-template-columns: 1fr;
    }

    .profile-live-preview {
        position: relative;
        top: auto;
    }

    .profile-hero-content {
        grid-template-columns: 1fr;
        text-align: center;
        justify-items: center;
    }

    .profile-hero-actions {
        justify-content: center;
    }
}

@media (max-width: 760px) {
    .profile-two-col,
    .profile-switch-row {
        grid-template-columns: 1fr;
    }

    .profile-save-bar {
        flex-direction: column;
    }

    .profile-save-bar .btn,
    .profile-save-bar button {
        width: 100%;
    }

    .profile-hero-banner {
        height: 150px;
    }
}



/* V9 Community Features */
.reaction-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
}

.reaction-btn {
    height: 34px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,0.10);
    background: rgba(255,255,255,0.05);
    color: rgba(255,255,255,0.78);
    font-weight: 900;
    padding: 0 12px;
    cursor: pointer;
}

.reaction-btn:hover,
.reaction-btn.active {
    background: rgba(79,69,230,0.45);
    border-color: rgba(130,120,255,0.55);
    color: white;
}

.post-tools {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 12px;
}

.member-search {
    padding: 16px;
    display: grid;
    grid-template-columns: 1fr 180px 140px;
    gap: 10px;
    margin-bottom: 18px;
}

.member-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.member-card {
    padding: 16px;
    display: grid;
    grid-template-columns: 58px 1fr;
    gap: 14px;
    align-items: center;
}

.member-card .avatar {
    width: 58px;
    height: 58px;
    border-radius: 999px;
    object-fit: cover;
}

.member-card h2 {
    margin: 0;
    color: white;
    font-size: 18px;
}

.member-card span,
.member-card small {
    display: block;
    margin-top: 3px;
    color: rgba(255,255,255,0.56);
    font-weight: 800;
}

.messages-panel {
    padding: 18px;
}

.pm-message {
    display: grid;
    grid-template-columns: 50px 1fr;
    gap: 12px;
    padding: 14px;
    border-radius: 14px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    margin-bottom: 10px;
}

.pm-message b,
.pm-message small {
    display: block;
}

.pm-message small {
    color: rgba(255,255,255,0.45);
    margin: 3px 0 8px;
}

.report-content-card {
    padding: 24px;
    max-width: 850px;
}

.author-box .avatar {
    object-fit: cover;
}

.forum-signature {
    margin-top: 18px;
    padding: 12px 14px;
    border-top: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.025);
    border-radius: 0 0 12px 12px;
    color: rgba(255,255,255,0.66);
}

@media (max-width: 900px) {
    .member-search,
    .member-grid {
        grid-template-columns: 1fr;
    }
}



/* V10 Social Messaging Fixes */
.reaction-btn[disabled] {
    opacity: 0.55;
    cursor: wait;
}

.post-tools .btn,
.quote-reply-btn {
    min-width: 130px;
    height: 44px;
    padding: 0 18px;
}

.post-tools a.btn[href*="report_content"],
.post-tools .btn.ghost:last-child {
    min-width: 110px;
}

.rank-locked-note {
    padding: 14px;
    border-radius: 14px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    margin-bottom: 14px;
}

.rank-locked-note b,
.rank-locked-note span {
    display: block;
}

.rank-locked-note span {
    margin-top: 5px;
    color: rgba(255,255,255,0.58);
    font-size: 13px;
    font-weight: 800;
}

.autocomplete-wrap {
    position: relative;
}

.autocomplete-results {
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 8px);
    background: rgba(8, 11, 20, 0.98);
    border: 1px solid rgba(255,255,255,0.14);
    border-radius: 14px;
    box-shadow: 0 24px 70px rgba(0,0,0,0.55);
    padding: 8px;
    display: none;
    z-index: 5000;
}

.autocomplete-results.open {
    display: block;
}

.autocomplete-item {
    width: 100%;
    min-height: 54px;
    border: 0;
    border-radius: 11px;
    background: transparent;
    color: white;
    display: grid;
    grid-template-columns: 38px 1fr auto;
    gap: 10px;
    align-items: center;
    padding: 8px;
    text-align: left;
}

.autocomplete-item:hover {
    background: rgba(79,69,230,0.22);
}

.autocomplete-item img,
.autocomplete-item > span {
    width: 38px;
    height: 38px;
    border-radius: 999px;
    object-fit: cover;
    background: #4f46e5;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
}

.autocomplete-item small {
    color: rgba(255,255,255,0.48);
    font-weight: 900;
}

.autocomplete-empty {
    padding: 14px;
    color: rgba(255,255,255,0.56);
    font-weight: 900;
    text-align: center;
}

.message-compose-card,
.friends-panel {
    padding: 24px;
}

.friend-row {
    min-height: 76px;
    display: grid;
    grid-template-columns: 56px 1fr auto;
    gap: 12px;
    align-items: center;
    padding: 12px;
    border-radius: 14px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    margin-bottom: 10px;
}

.friend-row b,
.friend-row span {
    display: block;
}

.friend-row span {
    margin-top: 4px;
    color: rgba(255,255,255,0.54);
    font-weight: 800;
}

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

@media (max-width: 760px) {
    .friend-row {
        grid-template-columns: 56px 1fr;
    }

    .friend-actions {
        grid-column: 1 / -1;
    }

    .friend-actions .btn {
        flex: 1;
    }
}



/* V10.1 profile/social cleanup */

.profile-rank-line {
    margin: 4px 0 0 !important;
    color: rgba(255,255,255,0.78) !important;
    font-size: 18px !important;
    font-weight: 900 !important;
}

.profile-steam-line,
.profile-location-line {
    margin: 5px 0 0 !important;
    color: rgba(255,255,255,0.56) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
}

.profile-hero-copy .profile-hero-badges {
    margin-top: 12px;
}

.forum-user-meta {
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin-top: 8px;
    text-align: center;
    max-width: 100%;
}

.forum-user-meta span {
    color: rgba(255,255,255,0.52);
    font-size: 12px;
    font-weight: 800;
    line-height: 1.25;
    word-break: break-word;
}

.reaction-picker {
    position: relative;
    display: inline-flex;
    margin-top: 16px;
    z-index: 3;
}

.reaction-open-btn {
    height: 38px;
    min-width: 68px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,0.13);
    background: rgba(255,255,255,0.07);
    color: white;
    font-size: 17px;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    cursor: pointer;
    box-shadow: 0 8px 18px rgba(0,0,0,0.18);
}

.reaction-open-btn:hover,
.reaction-picker.open .reaction-open-btn {
    background: rgba(79,69,230,0.50);
    border-color: rgba(130,120,255,0.58);
}

.reaction-open-btn span {
    font-size: 12px;
    color: rgba(255,255,255,0.74);
}

.reaction-menu {
    position: absolute;
    left: 0;
    bottom: calc(100% + 8px);
    display: none;
    gap: 7px;
    padding: 8px;
    border-radius: 999px;
    background: rgba(8, 11, 20, 0.98);
    border: 1px solid rgba(255,255,255,0.14);
    box-shadow: 0 20px 55px rgba(0,0,0,0.46);
    z-index: 50;
    white-space: nowrap;
}

.reaction-picker.open .reaction-menu {
    display: flex;
}

.reaction-menu .reaction-btn {
    width: 44px;
    height: 38px;
    min-width: 44px;
    padding: 0;
    border-radius: 999px;
    background: rgba(255,255,255,0.06);
    font-size: 18px;
}

.reaction-menu .reaction-btn span {
    position: absolute;
    top: -6px;
    right: -4px;
    min-width: 17px;
    height: 17px;
    border-radius: 999px;
    background: rgba(57,255,85,0.95);
    color: #041006;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    font-weight: 900;
}

.reaction-menu .reaction-btn.active {
    background: rgba(79,69,230,0.72);
    border-color: rgba(160,150,255,0.70);
}

.post-tools {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
}

.post-tools .btn,
.post-tools button,
.post-tools a {
    height: 42px !important;
    min-width: 118px !important;
    max-width: 180px;
    padding: 0 16px !important;
    border-radius: 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    text-align: center !important;
}

.report-post-btn {
    min-width: 96px !important;
}

.messages-list {
    display: grid;
    gap: 12px;
}

.message-conversation-card {
    padding: 16px;
    display: grid;
    grid-template-columns: 64px 1fr auto;
    gap: 14px;
    align-items: center;
}

.message-conversation-card span {
    color: rgba(255,255,255,0.52);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.message-conversation-card h2 {
    margin: 3px 0 4px;
    color: white;
    font-size: 20px;
}

.message-conversation-card p,
.message-conversation-card small {
    color: rgba(255,255,255,0.56);
    font-weight: 800;
}

.empty-state-card {
    padding: 28px;
}

.friends-clean-layout {
    display: grid;
    gap: 16px;
}

.friends-clean-card {
    padding: 22px;
}

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

.friends-card-head h2 {
    margin: 0;
}

.friends-card-head span {
    color: rgba(255,255,255,0.54);
    font-weight: 900;
}

.empty-mini {
    padding: 18px;
    border-radius: 14px;
    background: rgba(255,255,255,0.035);
    border: 1px solid rgba(255,255,255,0.07);
    color: rgba(255,255,255,0.58);
    font-weight: 900;
}

.friend-clean-row {
    min-height: 86px;
    padding: 14px;
    border-radius: 16px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    display: grid;
    grid-template-columns: 62px 1fr auto;
    gap: 14px;
    align-items: center;
}

.friend-clean-row b,
.friend-clean-row span {
    display: block;
}

.friend-clean-row > div > span {
    margin-top: 3px;
    color: rgba(255,255,255,0.62);
    font-weight: 900;
}

.friends-grid-clean {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.friend-mini-card {
    padding: 18px;
    border-radius: 16px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    text-align: center;
}

.friend-mini-card .avatar {
    margin: 0 auto 10px;
    object-fit: cover;
}

.friend-mini-card b,
.friend-mini-card span,
.friend-mini-card small {
    display: block;
}

.friend-mini-card b {
    color: white;
}

.friend-mini-card span,
.friend-mini-card small {
    color: rgba(255,255,255,0.54);
    margin-top: 4px;
    font-weight: 800;
}

@media (max-width: 900px) {
    .message-conversation-card {
        grid-template-columns: 56px 1fr;
    }

    .message-conversation-card small {
        grid-column: 2;
    }

    .friend-clean-row,
    .friends-grid-clean {
        grid-template-columns: 1fr;
    }

    .friend-actions {
        justify-content: stretch;
    }

    .friend-actions .btn {
        flex: 1;
    }
}



/* V10.2 friends/identity cleanup */

.profile-hero-actions .disabled,
.btn.disabled {
    opacity: 0.7;
    cursor: default;
    pointer-events: none;
}

.forum-user-meta {
    gap: 4px;
}

.forum-user-meta .forum-location,
.forum-user-meta .forum-steam-name {
    color: rgba(255,255,255,0.58);
    font-size: 12px;
    font-weight: 900;
}

.author-box .forum-steam-name {
    color: rgba(255,255,255,0.48);
}

.author-box .forum-location {
    color: rgba(255,255,255,0.58);
}

.autocomplete-item small {
    text-align: right;
    max-width: 240px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.friend-clean-row .forum-user-meta {
    align-items: flex-start;
    text-align: left;
}



/* V10.3 live update badges/toasts */

.live-nav-bubble {
    min-width: 18px;
    height: 18px;
    border-radius: 999px;
    margin-left: 6px;
    padding: 0 5px;
    background: #39ff55;
    color: #061008;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 900;
    vertical-align: middle;
}

.live-toast {
    position: fixed;
    right: 24px;
    bottom: 24px;
    width: min(360px, calc(100vw - 48px));
    padding: 16px 18px;
    border-radius: 16px;
    background: rgba(10, 14, 24, 0.96);
    border: 1px solid rgba(57,255,85,0.30);
    box-shadow: 0 24px 70px rgba(0,0,0,0.55);
    color: white;
    z-index: 999999;
    transform: translateY(18px);
    opacity: 0;
    transition: all 0.18s ease;
}

.live-toast.show {
    transform: translateY(0);
    opacity: 1;
}

.live-toast b,
.live-toast span {
    display: block;
}

.live-toast span {
    margin-top: 5px;
    color: rgba(255,255,255,0.68);
    font-weight: 800;
    font-size: 13px;
}

.notification-item {
    display: block;
    padding: 12px;
    border-radius: 12px;
    color: white;
    background: rgba(255,255,255,0.035);
    border: 1px solid rgba(255,255,255,0.06);
    margin-bottom: 8px;
}

.notification-item.unread {
    background: rgba(79,69,230,0.20);
    border-color: rgba(110,100,255,0.32);
}

.notification-item b,
.notification-item span,
.notification-item small {
    display: block;
}

.notification-item span {
    color: rgba(255,255,255,0.62);
    margin-top: 4px;
    font-size: 12px;
}

.notification-item small {
    color: rgba(255,255,255,0.38);
    margin-top: 5px;
    font-size: 11px;
}

.notification-empty {
    padding: 14px;
    color: rgba(255,255,255,0.52);
    font-weight: 900;
    text-align: center;
}



/* V10.4b safe friend/header additions */

.user-chip {
    display: inline-flex !important;
    align-items: center;
    gap: 10px;
}

.user-chip-avatar {
    width: 36px;
    height: 36px;
    border-radius: 999px;
    object-fit: cover;
    flex-shrink: 0;
}

.user-chip-avatar.fallback {
    background: #4f46e5;
    color: white;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.small-unfriend-btn {
    margin-top: 12px;
    width: 100%;
    min-height: 36px;
    font-size: 12px;
}

.friend-mini-card > a:first-child {
    display: block;
}

.friend-actions .danger,
.profile-hero-actions .danger,
.btn.danger {
    background: rgba(120, 35, 35, 0.92);
    border-color: rgba(255, 100, 100, 0.24);
    color: #ffb1b1;
}



/* V10.5 identity likes and live friend removal */

.forum-user-meta .forum-steam-name {
    color: rgba(255,255,255,0.62);
}

.forum-user-meta .forum-likes-received {
    color: #ffd166;
}

.author-box .forum-likes-received {
    margin-top: 4px;
}

.js-friend-action[data-busy="1"] {
    opacity: 0.65;
    pointer-events: none;
}

.profile-hero-card + .grid.three {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 1100px) {
    .profile-hero-card + .grid.three {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .profile-hero-card + .grid.three {
        grid-template-columns: 1fr;
    }
}



/* V10.6 full social cleanup */

.user-chip {
    display: inline-flex !important;
    align-items: center;
    gap: 10px;
}

.user-chip-avatar {
    width: 38px;
    height: 38px;
    border-radius: 999px;
    object-fit: cover;
    flex-shrink: 0;
}

.user-chip-avatar.fallback {
    background: #4f46e5;
    color: white;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.forum-user-meta .forum-steam-name {
    color: rgba(255,255,255,0.62);
}

.forum-user-meta .forum-likes-received {
    color: #ffd166;
}

.js-friend-action[data-busy="1"] {
    opacity: 0.65;
    pointer-events: none;
}

.small-unfriend-btn {
    margin-top: 12px;
    width: 100%;
    min-height: 36px;
    font-size: 12px;
}

.friend-mini-card > a:first-child {
    display: block;
}

.btn.danger,
.friend-actions .danger,
.profile-hero-actions .danger,
.delete-conversation-btn {
    background: rgba(120, 35, 35, 0.92);
    border-color: rgba(255, 100, 100, 0.24);
    color: #ffb1b1;
}

.message-conversation-card {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 14px;
    align-items: center;
}

.conversation-main-link {
    display: grid;
    grid-template-columns: 64px 1fr auto;
    gap: 14px;
    align-items: center;
    color: inherit;
}

.delete-conversation-btn {
    min-width: 92px;
    height: 40px;
}

.profile-hero-card + .grid.three {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 1100px) {
    .profile-hero-card + .grid.three {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .message-conversation-card,
    .conversation-main-link {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 700px) {
    .profile-hero-card + .grid.three {
        grid-template-columns: 1fr;
    }
}



/* V10.7 category icons, header duplicate avatar cleanup, UK polish */

.category-icon-clean,
.category-icon,
.forum-icon,
.cat-icon {
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    border-radius: 18px !important;
    background:
        radial-gradient(circle at 35% 25%, rgba(255,255,255,0.18), transparent 28%),
        linear-gradient(135deg, rgba(79,69,230,0.78), rgba(35,31,92,0.96)) !important;
    border: 1px solid rgba(255,255,255,0.10) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.12), 0 12px 28px rgba(0,0,0,0.22) !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    overflow: hidden !important;
    flex-shrink: 0 !important;
}

.category-icon-clean::before,
.category-icon::before,
.forum-icon::before,
.cat-icon::before {
    content: "";
    width: 22px;
    height: 22px;
    border-radius: 999px;
    background: rgba(255,255,255,0.88);
    display: block;
    box-shadow:
        0 0 0 8px rgba(255,255,255,0.08),
        0 0 24px rgba(125,115,255,0.48);
}

.category-icon-clean::after,
.category-icon::after,
.forum-icon::after,
.cat-icon::after {
    content: "";
    position: absolute;
    right: 13px;
    bottom: 13px;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: #39ff55;
    border: 2px solid rgba(12,15,25,0.92);
}

.category-icon-clean {
    color: transparent !important;
}

/* Hide duplicate fallback letter circle if the JS-added/image avatar exists in the top user chip */
.user-chip .user-chip-avatar.fallback:not(:only-child),
.user-chip img.user-chip-avatar + .user-chip-avatar.fallback,
.user-chip .user-chip-avatar.fallback + img.user-chip-avatar {
    display: none !important;
}

.user-chip img.user-chip-avatar {
    display: inline-flex !important;
}

/* If old header has both the old fallback span and our injected avatar, keep image only */
.user-chip > .fallback + b,
.user-chip > img + .fallback {
    display: none !important;
}



/* V10.8 editor/message/time cleanup */

.create-thread-card {
    padding: 24px;
}

.create-thread-card .rich-editor-shell,
.reply-card .rich-editor-shell {
    margin-top: 12px;
}

.message-conversation-card {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 14px;
    align-items: center;
}

.conversation-main-link {
    display: grid;
    grid-template-columns: 64px 1fr auto;
    gap: 14px;
    align-items: center;
    color: inherit;
}

.delete-conversation-btn {
    min-width: 92px;
    height: 40px;
}

@media (max-width: 1100px) {
    .message-conversation-card,
    .conversation-main-link {
        grid-template-columns: 1fr;
    }
}


/* V5 final forum cleanup */
.user-chip img.user-chip-avatar,
.user-chip img.avatar { width:38px!important; height:38px!important; border-radius:999px!important; object-fit:cover!important; }
.user-chip img.user-chip-avatar ~ .user-chip-avatar.fallback,
.user-chip img.avatar ~ .avatar-fallback,
.user-chip .avatar-fallback:has(+ img) { display:none!important; }
@media (max-width:980px){ .link-forum-btn, .top-actions > .btn.green { display:none!important; } }



/* V6 Forum sub-categories */

.compact-community-hero {
    min-height: auto;
    padding: 34px;
}

.forum-category-list {
    display: grid;
    gap: 14px;
}

.forum-category-card {
    position: relative;
    min-height: 132px;
    border-radius: 20px;
    background: rgba(13, 17, 28, 0.88);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 18px 55px rgba(0,0,0,0.25);
    padding: 22px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 14px;
    overflow: hidden;
}

.forum-category-main {
    display: grid;
    grid-template-columns: 74px 1fr;
    gap: 18px;
    align-items: start;
    color: white;
}

.forum-category-copy h2 {
    margin: 0 0 8px 0;
    font-size: 28px;
    line-height: 1;
}

.forum-category-copy p {
    margin: 0;
    color: rgba(255,255,255,0.64);
    font-weight: 800;
}

.forum-subcategory-grid {
    grid-column: 1 / -1;
    margin-left: 92px;
    display: grid;
    grid-template-columns: repeat(2, minmax(180px, 1fr));
    gap: 10px 30px;
    max-width: 760px;
}

.forum-subcategory-grid.large {
    margin-left: 0;
    max-width: none;
    grid-template-columns: repeat(3, minmax(180px, 1fr));
}

.forum-subcategory-link {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: white;
    font-size: 17px;
    font-weight: 900;
    min-width: 0;
}

.forum-subcategory-link:hover {
    color: #39ff55;
}

.forum-subcategory-dot {
    width: 12px;
    height: 12px;
    border-radius: 999px;
    background: white;
    box-shadow: 0 0 0 5px rgba(255,255,255,0.08), 0 0 18px rgba(255,255,255,0.35);
    flex-shrink: 0;
}

.forum-subcategory-link small {
    color: rgba(255,255,255,0.46);
    font-size: 12px;
    margin-left: auto;
}

.forum-category-counts {
    align-self: start;
    justify-self: end;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(79,69,230,0.45);
    color: rgba(255,255,255,0.86);
    font-weight: 900;
    white-space: nowrap;
}

.category-subcategory-panel {
    padding: 22px;
    margin-bottom: 18px;
}

.category-subcategory-panel h2 {
    margin: 0 0 16px 0;
}

@media (max-width: 900px) {
    .forum-category-card {
        grid-template-columns: 1fr;
    }

    .forum-category-main {
        grid-template-columns: 58px 1fr;
    }

    .forum-subcategory-grid,
    .forum-subcategory-grid.large {
        margin-left: 0;
        grid-template-columns: 1fr;
    }

    .forum-category-counts {
        justify-self: start;
    }

    .mobile-nav a[href*="members"],
    .mobile-nav a[href*="members.php"],
    .topnav a[href*="members"],
    .topnav a[href*="members.php"] {
        display: none !important;
    }
}



/* V7 category layout cleanup */

.forum-category-card {
    position: relative !important;
    display: block !important;
    padding: 24px 210px 24px 24px !important;
    min-height: 136px;
}

.forum-category-main {
    display: grid !important;
    grid-template-columns: 74px minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: start !important;
    max-width: 900px;
}

.forum-category-counts {
    position: absolute !important;
    top: 50% !important;
    right: 26px !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    white-space: nowrap !important;
    z-index: 2;
}

.forum-subcategory-grid {
    margin-left: 92px !important;
    margin-top: 14px !important;
    max-width: 780px !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(180px, 1fr)) !important;
    gap: 10px 32px !important;
}

.back-btn {
    width: fit-content;
    margin-bottom: 12px;
}

@media (max-width: 900px) {
    .forum-category-card {
        padding: 18px !important;
    }

    .forum-category-counts {
        position: static !important;
        transform: none !important;
        display: inline-flex !important;
        margin-top: 14px !important;
    }

    .forum-category-main {
        grid-template-columns: 58px minmax(0, 1fr) !important;
    }

    .forum-subcategory-grid {
        margin-left: 76px !important;
        grid-template-columns: 1fr !important;
    }

    .topnav a[href*="members"],
    .topnav a[href*="members.php"],
    .mobile-nav a[href*="members"],
    .mobile-nav a[href*="members.php"] {
        display: none !important;
    }

    .topnav a[href*="/admin"],
    .topnav a[href*="admin"],
    .mobile-nav a[href*="/admin"],
    .mobile-nav a[href*="admin"] {
        display: inline-flex !important;
    }
}

@media (max-width: 560px) {
    .forum-subcategory-grid {
        margin-left: 0 !important;
    }
}



/* V8 mobile staff/admin link fix */

@media (max-width: 900px) {
    .topnav a[href*="/admin"],
    .topnav a[href*="admin"],
    .mobile-nav a[href*="/admin"],
    .mobile-nav a[href*="admin"],
    a[href*="/admin/forum_admin"],
    a[href*="/admin/forum.php"] {
        display: inline-flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .topnav a[href*="members"],
    .mobile-nav a[href*="members"],
    a[href*="members.php"] {
        display: none !important;
    }
}



/* V9 mobile admin link visibility */
@media (max-width: 900px) {
    .mobile-staff-panel-link,
    .topnav a[href*="/admin"],
    .mobile-nav a[href*="/admin"] {
        display: inline-flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .topnav a[href*="members"],
    .mobile-nav a[href*="members"],
    a[href*="members.php"] {
        display: none !important;
    }
}



/* V10 forum category + rich editor fixes */

.category-page-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 22px;
    margin: 22px 0 20px;
}

.category-page-head h1 {
    margin: 12px 0 8px;
    font-size: clamp(36px, 4vw, 58px);
    line-height: .95;
}

.post-category-btn {
    white-space: nowrap;
    align-self: center;
}

.category-thread-list {
    display: grid;
    gap: 14px;
}

.category-thread-card {
    min-height: 116px;
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,0.10);
    background: rgba(13,17,28,0.80);
    padding: 22px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
    color: white;
}

.thread-card-main h2 {
    margin: 0 0 10px;
    font-size: 26px;
}

.thread-card-main p {
    margin: 0;
    color: rgba(255,255,255,0.62);
    font-weight: 850;
}

.rich-editor-shell {
    border: 1px solid rgba(255,255,255,0.10);
    background: rgba(7,10,18,0.76);
    border-radius: 16px;
    overflow: hidden;
}

.editor-toolbar,
.editor-mode-row {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    padding: 10px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    background: rgba(255,255,255,0.025);
}

.editor-toolbar button,
.editor-mode-row button,
.editor-toolbar select {
    min-height: 34px;
    border-radius: 9px;
    border: 1px solid rgba(255,255,255,0.10);
    background: rgba(255,255,255,0.07);
    color: white;
    font-weight: 900;
    padding: 0 11px;
}

.editor-mode-row button.active {
    background: #5b4dff;
}

.toolbar-sep {
    width: 1px;
    min-height: 26px;
    background: rgba(255,255,255,0.10);
    margin: 0 4px;
}

.editor-autosave-text {
    margin-left: auto;
    color: rgba(255,255,255,0.42);
    font-weight: 800;
    align-self: center;
}

.editor-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 260px;
}

.editor-grid.write {
    grid-template-columns: 1fr;
}

.editor-grid.write .editor-preview-wrap {
    display: none;
}

.editor-grid.preview {
    grid-template-columns: 1fr;
}

.editor-grid.preview .editor-input {
    display: none;
}

.editor-input {
    min-height: 260px;
    resize: vertical;
    border: 0;
    background: rgba(0,0,0,0.32);
    color: white;
    padding: 18px;
    font-size: 15px;
    outline: none;
}

.editor-preview-wrap {
    border-left: 1px solid rgba(255,255,255,0.08);
    min-height: 260px;
}

.editor-preview-title {
    padding: 12px 16px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    color: rgba(255,255,255,0.58);
    font-weight: 950;
    text-transform: uppercase;
    font-size: 12px;
}

.editor-preview {
    padding: 18px;
    color: white;
    line-height: 1.55;
}

.align-left { text-align: left; }
.align-center { text-align: center; }
.align-right { text-align: right; }
.text-small { font-size: 12px; }
.text-normal { font-size: 16px; }
.text-large { font-size: 22px; }
.text-huge { font-size: 32px; font-weight: 900; }

.post-image {
    max-width: 100%;
    border-radius: 14px;
    margin: 10px 0;
}

.youtube-embed {
    width: 100%;
    aspect-ratio: 16/9;
    border: 0;
    border-radius: 14px;
    margin: 10px 0;
}

.spoiler {
    background: rgba(255,255,255,0.18);
    color: transparent;
    border-radius: 6px;
    padding: 1px 6px;
}

.spoiler:hover {
    color: white;
}

@media (max-width: 900px) {
    .category-page-head,
    .category-thread-card {
        grid-template-columns: 1fr;
        display: grid;
    }

    .post-category-btn {
        justify-self: start;
    }

    .editor-grid,
    .editor-grid.split {
        grid-template-columns: 1fr;
    }

    .editor-preview-wrap {
        border-left: 0;
        border-top: 1px solid rgba(255,255,255,0.08);
    }

    .topnav a[href*="/admin"],
    .mobile-nav a[href*="/admin"],
    a.mobile-staff-panel-link {
        display: inline-flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
}



/* V11 editor loader fix */

.rich-editor-shell button,
.rich-editor-shell select {
    cursor: pointer;
}

.rich-editor-shell button:hover,
.rich-editor-shell select:hover {
    border-color: rgba(255,255,255,0.24);
    background: rgba(255,255,255,0.11);
}

.editor-preview strong,
.content-body strong {
    font-weight: 950;
}

.editor-preview blockquote,
.content-body blockquote {
    border-left: 4px solid #6c63ff;
    padding: 10px 14px;
    margin: 10px 0;
    border-radius: 8px;
    background: rgba(108,99,255,0.10);
}

.editor-preview ul,
.content-body ul {
    padding-left: 22px;
}



/* V12 rich editor everywhere + compact content spacing */

.content-body,
.editor-preview {
    line-height: 1.45;
}

.content-body .align-left,
.content-body .align-center,
.content-body .align-right,
.editor-preview .align-left,
.editor-preview .align-center,
.editor-preview .align-right {
    margin: 0 0 10px 0;
}

.content-body br + br,
.editor-preview br + br {
    display: none;
}

.content-body p,
.editor-preview p {
    margin: 0 0 10px 0;
}

.content-body blockquote,
.editor-preview blockquote,
.content-body pre,
.editor-preview pre,
.content-body ul,
.editor-preview ul {
    margin-top: 10px;
    margin-bottom: 10px;
}

.profile-edit-card .rich-editor-shell,
.message-form .rich-editor-shell,
.conversation-reply .rich-editor-shell {
    margin-top: 8px;
}



/* V13 global editor + paragraph spacing fix */

.content-body {
    line-height: 1.55;
}

.content-body p,
.editor-preview p {
    margin: 0 0 18px 0;
}

.content-body p:last-child,
.editor-preview p:last-child {
    margin-bottom: 0;
}

.content-body .align-left,
.content-body .align-center,
.content-body .align-right,
.editor-preview .align-left,
.editor-preview .align-center,
.editor-preview .align-right {
    margin: 0 0 18px 0;
}

.content-body br,
.editor-preview br {
    line-height: 1.55;
}

.content-body blockquote,
.editor-preview blockquote,
.content-body pre,
.editor-preview pre,
.content-body ul,
.editor-preview ul {
    margin: 14px 0 18px 0;
}

.rich-editor-shell button,
.rich-editor-shell select {
    pointer-events: auto !important;
    cursor: pointer !important;
}

.rich-editor-shell textarea {
    pointer-events: auto !important;
}



/* V18 live/friends layout fix */

.friends-clean-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
}

.friends-live-list {
    display: grid;
    gap: 12px;
    margin-top: 14px;
}

.friend-clean-row {
    display: grid !important;
    grid-template-columns: 66px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 14px !important;
    min-height: 84px !important;
    padding: 14px 16px !important;
    margin: 0 !important;
    border-radius: 16px !important;
    background: rgba(255,255,255,0.045) !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
}

.friend-row-main b,
.friend-clean-row b {
    display: block;
    color: #fff;
    font-size: 17px;
    margin-bottom: 4px;
}

.friend-row-main > span,
.friend-clean-row span {
    display: inline-block;
}

.friend-actions {
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}

.friend-actions .badge {
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(108, 99, 255, 0.18);
    border: 1px solid rgba(108, 99, 255, 0.35);
    color: #fff;
    font-weight: 900;
}

.friend-mini-card {
    position: relative;
}

.empty-mini {
    padding: 16px;
    border-radius: 14px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    color: rgba(255,255,255,0.62);
    font-weight: 900;
}

.notification-pill[data-live-pulse],
[data-notification-count][data-live-pulse] {
    animation: livePulse 0.7s ease;
}

@keyframes livePulse {
    0% { transform: scale(1); }
    35% { transform: scale(1.08); }
    100% { transform: scale(1); }
}

@media (max-width: 760px) {
    .friend-clean-row {
        grid-template-columns: 1fr !important;
        text-align: left;
    }

    .friend-actions {
        justify-content: stretch;
    }

    .friend-actions .btn,
    .friend-actions button {
        flex: 1;
    }
}



/* V20 live bridge polish */
.nav-friend-count,
[data-live-friend-count] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    margin-left: 4px;
    padding: 0 5px;
    border-radius: 999px;
    background: #39ff55;
    color: #041407;
    font-size: 11px;
    font-weight: 950;
}

.friend-clean-row {
    display: grid !important;
    grid-template-columns: 70px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 14px !important;
    min-height: 92px !important;
    padding: 16px !important;
}

.friend-actions button,
.friend-actions .btn {
    cursor: pointer;
}

.toast-wrap {
    position: fixed;
    right: 22px;
    bottom: 22px;
    z-index: 999999;
    display: grid;
    gap: 10px;
}

.toast {
    min-width: 240px;
    max-width: 360px;
    padding: 14px 16px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(14,18,31,0.97);
    color: #fff;
    box-shadow: 0 18px 50px rgba(0,0,0,0.4);
    font-weight: 900;
}

.toast.error {
    border-color: rgba(255,80,80,0.45);
}

.toast.success {
    border-color: rgba(57,255,85,0.35);
}


/* V22 idle live fixes */
.nav-friend-count,[data-live-friend-count]{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;margin-left:5px;padding:0 5px;border-radius:999px;background:#39ff55;color:#041407;font-size:11px;font-weight:950}
.nav-friend-count:empty,[data-live-friend-count]:empty{display:none}


/* Dynamic database rank colours */
.rank-badge {
    color: var(--rank-color, #b9bac7) !important;
    border-color: color-mix(in srgb, var(--rank-color, #b9bac7) 45%, transparent) !important;
    background: color-mix(in srgb, var(--rank-color, #b9bac7) 18%, transparent) !important;
    box-shadow: 0 0 18px color-mix(in srgb, var(--rank-color, #b9bac7) 16%, transparent);
}
.rank-badge.gold,
.rank-badge.green,
.rank-badge.purple,
.rank-badge.blue {
    color: var(--rank-color, #b9bac7) !important;
}



/* V34 thumbs up/down voting */
.post {
    position: relative;
}

.vote-box {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 14px;
    margin-left: auto;
    width: fit-content;
}

.post > div .vote-box {
    float: right;
}

.vote-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-width: 64px;
    padding: 8px 11px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.055);
    color: rgba(255,255,255,0.78);
    font-weight: 950;
    cursor: pointer;
    transition: transform 0.14s ease, border-color 0.14s ease, background 0.14s ease, color 0.14s ease;
}

.vote-btn:hover:not(:disabled) {
    transform: translateY(-1px);
    background: rgba(255,255,255,0.09);
    color: #fff;
}

.vote-btn:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

.vote-up.active {
    color: #39ff55;
    border-color: rgba(57,255,85,0.38);
    background: rgba(57,255,85,0.12);
    box-shadow: 0 0 18px rgba(57,255,85,0.10);
}

.vote-down.active {
    color: #ff6060;
    border-color: rgba(255,96,96,0.38);
    background: rgba(255,96,96,0.12);
    box-shadow: 0 0 18px rgba(255,96,96,0.10);
}

.profile-vote-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 160px));
    gap: 10px;
    margin: 16px 0;
}

.profile-vote-stats > div {
    padding: 13px 15px;
    border-radius: 14px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.08);
}

.profile-vote-stats span {
    display: block;
    color: rgba(255,255,255,0.58);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.profile-vote-stats b {
    display: block;
    margin-top: 4px;
    font-size: 22px;
    color: #fff;
}

.reaction-picker,
.reaction-menu,
.reaction-open-btn {
    display: none !important;
}



/* V36 vote cleanup */
.post-tools-v36,
.post-tools {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 14px;
}

.post-tools-v36 .vote-box {
    margin-top: 0 !important;
    margin-left: auto !important;
    width: auto !important;
    float: none !important;
}

.flag-report-btn {
    min-width: 46px;
    padding-left: 14px !important;
    padding-right: 14px !important;
    font-size: 18px;
}

.vote-box {
    display: inline-flex !important;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
}

.vote-btn {
    min-width: 58px;
}

.forum-signature {
    clear: both;
}


/* V37 quote/vote polish */
.post-tools-v36{
    display:flex;
    align-items:center;
}

.post-tools-v36 .btn{
    height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}

.post-tools-v36 .vote-box{
    align-self:center;
}


/* V38 button alignment fix */
.post-tools-v36{
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
}

.post-tools-v36 > *{
    margin-top:0 !important;
    margin-bottom:0 !important;
    align-self:center !important;
}

.post-tools-v36 .btn,
.post-tools-v36 .vote-box,
.post-tools-v36 .vote-btn{
    position:relative;
    top:0 !important;
    bottom:auto !important;
    vertical-align:middle !important;
}

.post-tools-v36 .vote-box{
    margin-left:auto !important;
}


/* V43 forum index economy leaderboards */
.forum-leaderboards-panel {
    margin: 22px 0;
    padding: 24px;
    border-radius: 22px;
    background: rgba(10, 14, 24, 0.88);
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 18px 50px rgba(0,0,0,0.38);
    backdrop-filter: blur(18px);
}

.forum-leaderboards-head {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: stretch;
    margin-bottom: 20px;
}

.forum-leaderboards-head h2 {
    margin: 12px 0 6px;
    font-size: 30px;
}

.forum-leaderboards-head p {
    margin: 0;
    color: rgba(255,255,255,0.62);
    font-weight: 700;
}

.printed-total-card {
    min-width: 280px;
    padding: 18px;
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(57,255,85,0.12), rgba(79,70,229,0.13));
    border: 1px solid rgba(57,255,85,0.22);
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
}

.printed-total-card span {
    color: rgba(255,255,255,0.66);
    font-weight: 900;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 0.8px;
}

.printed-total-card b {
    color: #39ff55;
    font-size: 30px;
    text-shadow: 0 0 18px rgba(57,255,85,0.24);
}

.printed-total-card small {
    color: rgba(255,255,255,0.45);
    font-size: 11px;
}

.forum-leaderboard-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.leaderboard-card {
    padding: 18px;
    border-radius: 18px;
    background: rgba(255,255,255,0.045);
    border: 1px solid rgba(255,255,255,0.10);
}

.leaderboard-card h3 {
    margin: 0 0 14px;
    font-size: 20px;
}

.leaderboard-list {
    display: grid;
    gap: 10px;
}

.leaderboard-row {
    display: grid;
    grid-template-columns: 34px 42px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 10px;
    border-radius: 14px;
    background: rgba(5, 7, 17, 0.46);
    border: 1px solid rgba(255,255,255,0.08);
}

a.leaderboard-row:hover {
    border-color: rgba(57,255,85,0.28);
    transform: translateY(-1px);
}

.leaderboard-place {
    width: 30px;
    height: 30px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.08);
    color: rgba(255,255,255,0.76);
    font-weight: 900;
}

.leaderboard-avatar {
    width: 42px;
    height: 42px;
    border-radius: 999px;
    object-fit: cover;
    background: rgba(79,70,229,0.8);
}

.leaderboard-avatar.fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
}

.leaderboard-name {
    min-width: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-weight: 900;
}

.leaderboard-row b {
    color: #39ff55;
    font-size: 15px;
    white-space: nowrap;
}

.leaderboard-empty {
    padding: 18px;
    border-radius: 14px;
    background: rgba(255,255,255,0.04);
    color: rgba(255,255,255,0.58);
    font-weight: 800;
}

@media (max-width: 900px) {
    .forum-leaderboards-head {
        flex-direction: column;
    }

    .printed-total-card {
        min-width: 0;
    }

    .forum-leaderboard-grid {
        grid-template-columns: 1fr;
    }

    .leaderboard-row {
        grid-template-columns: 30px 38px minmax(0, 1fr);
    }

    .leaderboard-row b {
        grid-column: 3;
        justify-self: start;
    }
}


/* =========================
   V47 Mobile polish + admin button
   ========================= */

.btn.admin {
    background: linear-gradient(135deg, rgba(255,181,69,.95), rgba(91,78,230,.95));
    color: #fff;
    border-color: rgba(255,255,255,.18);
    box-shadow: 0 12px 30px rgba(91,78,230,.28);
}

.btn.admin:hover {
    transform: translateY(-1px);
}

.mobile-bottom-nav {
    display: none;
}

@media (max-width: 860px) {
    html,
    body {
        overflow-x: hidden;
        width: 100%;
    }

    body {
        padding-bottom: 86px;
        background: #04060b;
    }

    .site-bg {
        opacity: 1;
        background:
            linear-gradient(rgba(2, 4, 10, 0.94), rgba(2, 4, 10, 0.97)),
            url('../../logo2.png') center center / cover no-repeat,
            #04060b;
        background-size: cover;
        background-position: center center;
    }

    .layout {
        width: 100%;
        max-width: 100%;
        padding: 14px 12px 98px !important;
        margin: 0 !important;
    }

    .topbar {
        margin: 10px 10px 16px !important;
        padding: 16px !important;
        border-radius: 18px !important;
        background: rgba(8, 10, 18, .92) !important;
        border: 1px solid rgba(255,255,255,.12) !important;
        box-shadow: 0 16px 45px rgba(0,0,0,.38) !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .brand {
        justify-content: flex-start !important;
        min-width: 0 !important;
        font-size: 28px !important;
    }

    .brand small {
        display: none !important;
    }

    .brand-icon {
        font-size: 26px !important;
    }

    .desktop-nav {
        display: none !important;
    }

    .top-actions {
        display: grid !important;
        grid-template-columns: auto 1fr !important;
        gap: 10px !important;
        align-items: center !important;
        width: 100% !important;
    }

    .notification-wrap {
        grid-column: 1;
        grid-row: 1;
    }

    .notification-pill {
        min-width: 54px !important;
        height: 44px !important;
        padding: 0 12px !important;
        border-radius: 999px !important;
        justify-content: center !important;
    }

    .user-chip {
        grid-column: 2;
        grid-row: 1;
        width: 100% !important;
        min-width: 0 !important;
        height: 56px !important;
        padding: 7px 12px !important;
        border-radius: 999px !important;
        justify-content: flex-start !important;
        background: rgba(255,255,255,.075) !important;
        border: 1px solid rgba(255,255,255,.10) !important;
    }

    .user-chip img,
    .user-chip .avatar,
    .user-chip .user-avatar {
        width: 42px !important;
        height: 42px !important;
        border-radius: 999px !important;
        object-fit: cover !important;
        flex: 0 0 auto !important;
    }

    .user-chip span {
        min-width: 0 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        font-size: 16px !important;
        font-weight: 900 !important;
    }

    .top-actions > .btn {
        min-height: 50px !important;
        border-radius: 14px !important;
        font-size: 15px !important;
    }

    .top-actions > .btn.ghost {
        grid-column: 1 / -1;
        grid-row: 3;
        width: 100%;
    }

    .mobile-admin-top-btn,
    .link-forum-btn {
        grid-column: 1 / -1;
        width: 100%;
    }

    .community-hero,
    .compact-community-hero {
        margin: 0 0 14px !important;
        padding: 22px 18px !important;
        min-height: auto !important;
        border-radius: 22px !important;
        display: grid !important;
        gap: 18px !important;
        overflow: hidden !important;
    }

    .community-hero span,
    .compact-community-hero span {
        font-size: 13px !important;
    }

    .community-hero h1,
    .compact-community-hero h1 {
        font-size: 34px !important;
        line-height: 1.04 !important;
        margin: 8px 0 12px !important;
    }

    .community-hero p,
    .compact-community-hero p {
        font-size: 15px !important;
        line-height: 1.35 !important;
        max-width: 100% !important;
        margin: 0 !important;
    }

    .hero-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        width: 100% !important;
    }

    .hero-actions .btn {
        width: 100% !important;
        min-height: 52px !important;
        border-radius: 14px !important;
        justify-content: center !important;
        font-size: 16px !important;
    }

    .forum-leaderboards-panel {
        margin: 14px 0 !important;
        padding: 18px !important;
        border-radius: 22px !important;
    }

    .forum-leaderboards-head {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .forum-leaderboards-head h2 {
        font-size: 29px !important;
        line-height: 1.06 !important;
    }

    .forum-leaderboards-head p {
        font-size: 14px !important;
        line-height: 1.35 !important;
    }

    .printed-total-card {
        min-width: 0 !important;
        width: 100% !important;
        padding: 16px !important;
        border-radius: 18px !important;
    }

    .printed-total-card b {
        font-size: 28px !important;
    }

    .forum-leaderboard-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .leaderboard-card {
        padding: 15px !important;
        border-radius: 18px !important;
    }

    .leaderboard-row {
        grid-template-columns: 30px 42px minmax(0,1fr) !important;
        gap: 9px !important;
        padding: 10px !important;
    }

    .leaderboard-row b {
        grid-column: 3 !important;
        justify-self: start !important;
        font-size: 14px !important;
    }

    .leaderboard-avatar {
        width: 42px !important;
        height: 42px !important;
        border-radius: 999px !important;
        object-fit: cover !important;
    }

    .page-head h1 {
        font-size: 28px !important;
    }

    .forum-category-card {
        border-radius: 18px !important;
        padding: 14px !important;
    }

    .forum-category-main {
        gap: 12px !important;
    }

    .forum-category-copy h2 {
        font-size: 20px !important;
    }

    .forum-category-copy p {
        font-size: 14px !important;
        line-height: 1.35 !important;
    }

    .forum-category-counts {
        margin-top: 12px !important;
        width: 100% !important;
        justify-content: center !important;
    }

    .forum-subcategory-grid {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    .notification-popover {
        position: fixed !important;
        left: 12px !important;
        right: 12px !important;
        top: 105px !important;
        width: auto !important;
        max-width: none !important;
        border-radius: 18px !important;
    }

    .mobile-bottom-nav {
        position: fixed;
        display: grid;
        grid-auto-flow: column;
        grid-auto-columns: 1fr;
        gap: 6px;
        left: 12px;
        right: 12px;
        bottom: 12px;
        z-index: 9998;
        padding: 9px;
        border-radius: 22px;
        background: rgba(8, 10, 18, .94);
        border: 1px solid rgba(255,255,255,.14);
        box-shadow: 0 18px 55px rgba(0,0,0,.55);
        backdrop-filter: blur(18px);
    }

    .mobile-bottom-nav a {
        position: relative;
        min-width: 0;
        height: 52px;
        border-radius: 16px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 3px;
        color: rgba(255,255,255,.72);
        text-decoration: none;
        font-weight: 900;
        font-size: 11px;
    }

    .mobile-bottom-nav a.active,
    .mobile-bottom-nav a:hover {
        background: rgba(91,78,230,.22);
        color: #fff;
    }

    .mobile-bottom-nav a.staff {
        background: rgba(255,181,69,.12);
        color: #ffd38a;
    }

    .mobile-bottom-nav span {
        font-size: 20px;
        line-height: 1;
    }

    .mobile-bottom-nav b {
        display: block;
        font-size: 11px;
    }

    .mobile-bottom-nav em {
        position: absolute;
        top: 4px;
        right: 12px;
        min-width: 18px;
        height: 18px;
        padding: 0 5px;
        border-radius: 999px;
        background: #ff4b4b;
        color: #fff;
        font-style: normal;
        font-size: 11px;
        display: grid;
        place-items: center;
    }
}

@media (max-width: 420px) {
    .layout {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .topbar {
        margin-left: 8px !important;
        margin-right: 8px !important;
    }

    .community-hero h1,
    .compact-community-hero h1 {
        font-size: 30px !important;
    }

    .forum-leaderboards-head h2 {
        font-size: 26px !important;
    }
}


/* V58 prefix style - filled colour, flat, no brackets */
.thread-prefix-modern,
.thread-prefix {
    --prefix-color: #5865F2;

    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-height: 30px !important;
    padding: 0 14px !important;
    margin-right: 8px !important;

    border-radius: 999px !important;
    overflow: hidden !important;

    background: var(--prefix-color) !important;
    border: 1px solid rgba(255,255,255,.25) !important;

    box-shadow:
        0 0 10px rgba(156, 39, 176, .35),
        inset 0 1px 0 rgba(255,255,255,.16) !important;

    color: #fff !important;
    vertical-align: middle !important;
}

.thread-prefix-modern::before,
.thread-prefix::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: rgba(255,255,255,.08) !important;
    pointer-events: none !important;
}

.thread-prefix-shine {
    display: none !important;
}

.thread-prefix-text,
.thread-prefix {
    position: relative !important;
    z-index: 2 !important;

    color: #fff !important;

    font-size: 17px !important;
    font-weight: 1000 !important;
    letter-spacing: .2px !important;
    line-height: 1 !important;

    text-shadow: 0 1px 5px rgba(0,0,0,.45) !important;
}
















.page-head h1 .thread-prefix-modern,
.page-head h1 .thread-prefix,
.category-thread-card h2 .thread-prefix-modern,
.category-thread-card h2 .thread-prefix,
.thread-card h2 .thread-prefix-modern,
.thread-card h2 .thread-prefix {
    transform: translateY(-1px) !important;
}

.pinned-emoji {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-right: 6px !important;
    filter: drop-shadow(0 0 8px rgba(255, 214, 0, .4)) !important;
}

@media (max-width: 900px) {
    .thread-prefix-modern,
    .thread-prefix {
        min-height: 26px !important;
        padding: 0 11px !important;
    }

    .thread-prefix-text,
    .thread-prefix {
        font-size: 14px !important;
    }
}



/* V61 prefix final override */
.thread-prefix-modern {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 30px !important;
    padding: 0 14px !important;
    margin-right: 8px !important;
    border-radius: 999px !important;
    overflow: hidden !important;
    color: #fff !important;
    vertical-align: middle !important;
}

.thread-prefix-text {
    color: #fff !important;
    font-size: 17px !important;
    font-weight: 1000 !important;
    letter-spacing: .2px !important;
    line-height: 1 !important;
    text-shadow: 0 1px 5px rgba(0,0,0,.45) !important;
}


/* Badge system */
.lrp-user-badge-list{
 display:flex;
 flex-wrap:wrap;
 gap:8px;
 margin-top:10px;
}

.lrp-user-badge{
 display:inline-flex;
 align-items:center;
 gap:7px;
 padding:6px 12px;
 border-radius:999px;
 background:color-mix(in srgb,var(--badge-color,#5865F2) 18%, transparent);
 border:1px solid color-mix(in srgb,var(--badge-color,#5865F2) 45%, transparent);
 color:var(--badge-color,#fff);
 font-size:12px;
 font-weight:900;
 box-shadow:0 0 18px color-mix(in srgb,var(--badge-color,#5865F2) 16%, transparent);
}

.lrp-user-badge-icon{
 font-size:13px;
 line-height:1;
}

/* V70 custom user badges */
.lrp-user-badge-list{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;margin-top:8px;}
.profile-hero-badges .lrp-user-badge-list{justify-content:flex-start;margin-top:0;}
.lrp-user-badge{--badge-color:#5865F2;--badge-text:#fff;--badge-bg:#111827;--badge-border:#5865F2;--badge-gradient:#8B5CF6;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:30px;padding:0 13px;overflow:hidden;border-radius:999px;border:1px solid var(--badge-border);background:linear-gradient(135deg,var(--badge-color),var(--badge-bg));color:var(--badge-text);box-shadow:0 0 18px rgba(88,101,242,.22),inset 0 1px 0 rgba(255,255,255,.16);font-size:12px;font-weight:1000;line-height:1;text-shadow:0 1px 8px rgba(0,0,0,.35);white-space:nowrap;isolation:isolate;}
.lrp-user-badge-icon,.lrp-user-badge-text{position:relative;z-index:2;}.lrp-user-badge-icon{display:inline-flex;align-items:center;justify-content:center;min-width:14px;font-weight:1000;}.lrp-user-badge-shine{position:absolute;inset:0;z-index:1;background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.25) 42%,transparent 58%);transform:translateX(-85%);opacity:.55;pointer-events:none;}.lrp-user-badge-sparkles{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0;background:radial-gradient(circle at 18% 34%,#fff 0 1px,transparent 2px),radial-gradient(circle at 65% 24%,#fff 0 1px,transparent 2px),radial-gradient(circle at 82% 68%,#fff 0 1px,transparent 2px);}
.lrp-badge-size-small{min-height:24px;padding:0 10px;font-size:10px;gap:5px;}.lrp-badge-size-large{min-height:38px;padding:0 17px;font-size:14px;gap:9px;}.lrp-badge-shape-rounded{border-radius:12px;}.lrp-badge-shape-square{border-radius:3px;}.lrp-badge-shape-ticket{border-radius:10px;clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 50%,calc(100% - 8px) 100%,8px 100%,0 50%);}.lrp-badge-style-solid{background:linear-gradient(135deg,var(--badge-color),var(--badge-bg));}.lrp-badge-style-glass{background:linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.05));backdrop-filter:blur(10px);}.lrp-badge-style-outline{background:transparent;color:var(--badge-color);border-width:2px;text-shadow:none;}.lrp-badge-style-gradient{background:linear-gradient(135deg,var(--badge-color),var(--badge-gradient));}.lrp-badge-style-dark{background:linear-gradient(135deg,var(--badge-bg),#05070c);}
.lrp-badge-effect-shine .lrp-user-badge-shine{animation:lrpBadgeShine 2.2s linear infinite;}.lrp-badge-effect-sparkle .lrp-user-badge-sparkles{opacity:.95;animation:lrpBadgeSparkle 1.35s steps(2,end) infinite;}.lrp-badge-effect-glow{box-shadow:0 0 8px var(--badge-color),0 0 22px var(--badge-color),inset 0 1px 0 rgba(255,255,255,.16);}.lrp-badge-effect-pulse{animation:lrpBadgePulse 1.6s ease-in-out infinite;}.lrp-badge-effect-rainbow{animation:lrpBadgeHue 2.8s linear infinite;}.lrp-badge-effect-neon{box-shadow:0 0 5px var(--badge-color),0 0 14px var(--badge-color),0 0 28px var(--badge-color);text-shadow:0 0 8px var(--badge-text);}.lrp-badge-effect-fire{box-shadow:0 0 8px #ffb000,0 0 22px #ff5500,0 0 36px #ff2200;}
@keyframes lrpBadgeShine{to{transform:translateX(95%);}}@keyframes lrpBadgeSparkle{50%{transform:translateY(-1px) scale(1.04);filter:brightness(1.35);}}@keyframes lrpBadgePulse{50%{transform:scale(1.05);filter:brightness(1.14);}}@keyframes lrpBadgeHue{to{filter:hue-rotate(360deg);}}


/* V71 badge display + profile visibility controls */
.author-box .lrp-user-badge-list,
.public-profile-card .lrp-user-badge-list{
    width:100%;
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    justify-content:center !important;
    gap:7px !important;
    margin:9px 0 0 !important;
}
.profile-hero-badges .lrp-user-badge-list{
    width:auto;
    display:inline-flex !important;
    justify-content:flex-start !important;
    margin:0 !important;
}
.author-box .lrp-user-badge,
.profile-hero-badges .lrp-user-badge,
.public-profile-card .lrp-user-badge,
.profile-badge-visibility-panel .lrp-user-badge{
    width:auto !important;
    max-width:100% !important;
    height:auto !important;
    text-align:center !important;
    text-decoration:none !important;
    transform-origin:center !important;
}
.author-box .lrp-user-badge-icon,
.author-box .lrp-user-badge-text{
    display:inline-flex !important;
    align-items:center !important;
    line-height:1 !important;
}
.profile-badge-visibility-panel{
    display:grid;
    gap:10px;
    padding:14px;
    margin:12px 0 18px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:18px;
    background:rgba(8,10,24,.38);
}
.profile-badge-toggle-row{
    display:flex;
    align-items:center;
    gap:12px;
    padding:10px 12px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:16px;
    background:rgba(255,255,255,.035);
    cursor:pointer;
}
.profile-badge-toggle-row:hover{background:rgba(255,255,255,.06);}
.profile-badge-toggle-row input{width:18px;height:18px;accent-color:#8b5cf6;}
.profile-badge-toggle-row > span:last-child{margin-left:auto;color:#aeb6d8;font-size:12px;font-weight:800;}

/* V73: forum badges now use the same rendering as the admin badge preview */
.lrp-user-badge-list{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    width:100% !important;
    margin:9px 0 0 !important;
    padding:0 !important;
}
.profile-hero-badges .lrp-user-badge-list{
    width:auto !important;
    display:inline-flex !important;
    justify-content:flex-start !important;
    margin:0 !important;
}
.profile-badge-visibility-panel .lrp-user-badge-list{
    width:auto !important;
    margin:0 !important;
    justify-content:flex-start !important;
}
.lrp-user-badge{
    --badge-color:#5865F2;
    --badge-text:#fff;
    --badge-bg:#111827;
    --badge-border:#5865F2;
    --badge-gradient:#8B5CF6;
    position:relative !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:7px !important;
    min-height:30px !important;
    height:auto !important;
    width:auto !important;
    max-width:100% !important;
    padding:0 13px !important;
    overflow:hidden !important;
    border-radius:999px !important;
    border:1px solid var(--badge-border) !important;
    background:linear-gradient(135deg,var(--badge-color),var(--badge-bg)) !important;
    color:var(--badge-text) !important;
    box-shadow:0 0 18px rgba(88,101,242,.22), inset 0 1px 0 rgba(255,255,255,.16) !important;
    font-size:12px !important;
    font-weight:1000 !important;
    line-height:1 !important;
    text-align:center !important;
    text-shadow:0 1px 8px rgba(0,0,0,.35) !important;
    white-space:nowrap !important;
    text-decoration:none !important;
    vertical-align:middle !important;
    isolation:isolate !important;
    transform-origin:center !important;
}
.lrp-user-badge-icon,
.lrp-user-badge-text{
    position:relative !important;
    z-index:2 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    line-height:1 !important;
    color:inherit !important;
}
.lrp-user-badge-icon{
    min-width:14px !important;
    font-weight:1000 !important;
}
.lrp-user-badge-shine{
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    background:linear-gradient(110deg, transparent 0%, rgba(255,255,255,.25) 42%, transparent 58%) !important;
    transform:translateX(-85%) !important;
    opacity:.55 !important;
    pointer-events:none !important;
}
.lrp-user-badge-sparkles{
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    pointer-events:none !important;
    opacity:0 !important;
    background:radial-gradient(circle at 18% 34%, #fff 0 1px, transparent 2px), radial-gradient(circle at 65% 24%, #fff 0 1px, transparent 2px), radial-gradient(circle at 82% 68%, #fff 0 1px, transparent 2px) !important;
}
.lrp-badge-size-small{min-height:24px !important;padding:0 10px !important;font-size:10px !important;gap:5px !important;}
.lrp-badge-size-large{min-height:38px !important;padding:0 17px !important;font-size:14px !important;gap:9px !important;}
.lrp-badge-shape-rounded{border-radius:12px !important;}
.lrp-badge-shape-square{border-radius:3px !important;}
.lrp-badge-shape-ticket{border-radius:10px !important;clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 50%,calc(100% - 8px) 100%,8px 100%,0 50%) !important;}
.lrp-badge-style-solid{background:linear-gradient(135deg,var(--badge-color),var(--badge-bg)) !important;}
.lrp-badge-style-glass{background:linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.05)) !important;backdrop-filter:blur(10px) !important;}
.lrp-badge-style-outline{background:transparent !important;color:var(--badge-color) !important;border-width:2px !important;text-shadow:none !important;}
.lrp-badge-style-gradient{background:linear-gradient(135deg,var(--badge-color),var(--badge-gradient)) !important;}
.lrp-badge-style-dark{background:linear-gradient(135deg,var(--badge-bg),#05070c) !important;}
.lrp-badge-effect-shine .lrp-user-badge-shine{animation:lrpBadgeShine 2.2s linear infinite !important;}
.lrp-badge-effect-sparkle .lrp-user-badge-sparkles{opacity:.95 !important;animation:lrpBadgeSparkle 1.35s steps(2,end) infinite !important;}
.lrp-badge-effect-glow{box-shadow:0 0 8px var(--badge-color),0 0 22px var(--badge-color),inset 0 1px 0 rgba(255,255,255,.16) !important;}
.lrp-badge-effect-pulse{animation:lrpBadgePulse 1.6s ease-in-out infinite !important;}
.lrp-badge-effect-rainbow{animation:lrpBadgeHue 2.8s linear infinite !important;}
.lrp-badge-effect-neon{box-shadow:0 0 5px var(--badge-color),0 0 14px var(--badge-color),0 0 28px var(--badge-color) !important;text-shadow:0 0 8px var(--badge-text) !important;}
.lrp-badge-effect-fire{box-shadow:0 0 8px #ffb000,0 0 22px #ff5500,0 0 36px #ff2200 !important;}
@keyframes lrpBadgeShine{to{transform:translateX(95%);}}
@keyframes lrpBadgeSparkle{50%{transform:translateY(-1px) scale(1.04);filter:brightness(1.35);}}
@keyframes lrpBadgePulse{50%{transform:scale(1.05);filter:brightness(1.14);}}
@keyframes lrpBadgeHue{to{filter:hue-rotate(360deg);}}
.profile-badge-toggle-row{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:14px !important;
    padding:12px 14px !important;
    border:1px solid rgba(255,255,255,.08) !important;
    border-radius:14px !important;
    background:rgba(255,255,255,.035) !important;
}
.profile-badge-toggle-row .lrp-user-badge{
    margin-right:auto !important;
}
.profile-badge-toggle-row input[type="checkbox"]{
    width:18px !important;
    height:18px !important;
    flex:0 0 auto !important;
}

/* V74 shared badge expansion - matches admin badge preview, normal size only */
.lrp-user-badge{--badge-glow:var(--badge-color);--badge-shadow:#000000;--badge-sparkle:#ffffff;--badge-border-width:1px;min-height:30px !important;padding:0 13px !important;font-size:12px !important;gap:7px !important;border-width:var(--badge-border-width) !important;box-shadow:0 0 18px color-mix(in srgb,var(--badge-glow) 45%,transparent),0 8px 18px color-mix(in srgb,var(--badge-shadow) 36%,transparent),inset 0 1px 0 rgba(255,255,255,.16) !important;}
.lrp-badge-size-small,.lrp-badge-size-large{min-height:30px !important;padding:0 13px !important;font-size:12px !important;gap:7px !important;}.lrp-user-badge-sparkles{background:radial-gradient(circle at 18% 34%,var(--badge-sparkle) 0 1px,transparent 2px),radial-gradient(circle at 65% 24%,var(--badge-sparkle) 0 1px,transparent 2px),radial-gradient(circle at 82% 68%,var(--badge-sparkle) 0 1px,transparent 2px),radial-gradient(circle at 42% 76%,var(--badge-sparkle) 0 1px,transparent 2px) !important;}
.lrp-badge-style-metal{background:linear-gradient(135deg,#f8fafc 0%,var(--badge-color) 28%,#222 52%,var(--badge-gradient) 72%,#f8fafc 100%) !important;}.lrp-badge-style-chrome{background:linear-gradient(180deg,#fff 0%,var(--badge-gradient) 18%,var(--badge-bg) 52%,var(--badge-color) 78%,#fff 100%) !important;}.lrp-badge-style-carbon{background:linear-gradient(135deg,var(--badge-bg),#05070c) !important;}.lrp-badge-style-soft{background:linear-gradient(135deg,color-mix(in srgb,var(--badge-color) 72%,#fff),color-mix(in srgb,var(--badge-gradient) 65%,#000)) !important;}
.lrp-badge-texture-stripes:after,.lrp-badge-texture-dots:after,.lrp-badge-texture-grid:after,.lrp-badge-texture-scanlines:after,.lrp-badge-texture-carbon:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.18;mix-blend-mode:screen;}.lrp-badge-texture-stripes:after{background:repeating-linear-gradient(45deg,#fff 0 2px,transparent 2px 8px);}.lrp-badge-texture-dots:after{background:radial-gradient(circle,#fff 0 1px,transparent 1.5px);background-size:8px 8px;}.lrp-badge-texture-grid:after{background:linear-gradient(#fff 1px,transparent 1px),linear-gradient(90deg,#fff 1px,transparent 1px);background-size:9px 9px;}.lrp-badge-texture-scanlines:after{background:repeating-linear-gradient(180deg,#fff 0 1px,transparent 1px 5px);}.lrp-badge-texture-carbon:after{background:repeating-linear-gradient(45deg,#fff 0 1px,transparent 1px 6px),repeating-linear-gradient(-45deg,#fff 0 1px,transparent 1px 6px);opacity:.11;}
.lrp-badge-icon-hidden .lrp-user-badge-icon{display:none!important;}.lrp-badge-case-uppercase{text-transform:uppercase;}.lrp-badge-case-lowercase{text-transform:lowercase;}.lrp-badge-font-bold{font-weight:800;}.lrp-badge-font-heavy{font-weight:1000;}.lrp-badge-font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;}.lrp-badge-font-wide{letter-spacing:.09em;font-weight:900;}
.lrp-badge-speed-slow{animation-duration:3.8s!important;}.lrp-badge-speed-fast{animation-duration:.9s!important;}.lrp-badge-speed-slow .lrp-user-badge-shine{animation-duration:4s!important;}.lrp-badge-speed-fast .lrp-user-badge-shine{animation-duration:1.1s!important;}.lrp-badge-effect-electric{box-shadow:0 0 8px var(--badge-glow),0 0 24px var(--badge-gradient)!important;animation:lrpBadgeElectric 1s steps(2,end) infinite;}.lrp-badge-effect-electric:before{content:"";position:absolute;inset:-2px;z-index:1;background:linear-gradient(90deg,transparent,var(--badge-sparkle),transparent);opacity:.28;animation:lrpBadgeShine 1.1s linear infinite;}.lrp-badge-effect-hologram{animation:lrpBadgeHue 2s linear infinite;background:linear-gradient(120deg,var(--badge-color),var(--badge-gradient),#fff,var(--badge-color))!important;background-size:240% 100%!important;}.lrp-badge-effect-gold{background:linear-gradient(135deg,#8a5a00,#ffd66b,#fff4bf,#d99100)!important;box-shadow:0 0 8px #ffd66b,0 0 22px #a16207!important;}.lrp-badge-effect-gold .lrp-user-badge-shine{animation:lrpBadgeShine 1.9s linear infinite;}.lrp-badge-effect-frost{backdrop-filter:blur(10px);filter:saturate(1.2);box-shadow:inset 0 0 14px rgba(255,255,255,.22),0 0 18px var(--badge-glow)!important;}.lrp-badge-effect-float{animation:lrpBadgeFloat 2.2s ease-in-out infinite;}.lrp-badge-effect-heartbeat{animation:lrpBadgeHeartbeat 1.4s ease-in-out infinite;}@keyframes lrpBadgeElectric{50%{filter:brightness(1.45) contrast(1.18);transform:translateY(-1px)}}@keyframes lrpBadgeFloat{50%{transform:translateY(-3px)}}@keyframes lrpBadgeHeartbeat{15%,45%{transform:scale(1.08)}30%{transform:scale(.98)}}


/* V82 rarity text only + sell badge picker polish */
.rarity-text-common{color:#cbd5e1!important;}
.rarity-text-uncommon{color:#86efac!important;}
.rarity-text-rare{color:#93c5fd!important;}
.rarity-text-epic{color:#d8b4fe!important;}
.rarity-text-legendary{color:#fcd34d!important;}
.rarity-text-mythic{color:#f9a8d4!important;}
.lrp-user-badge[class*="lrp-badge-rarity-"]{outline:none!important;}
.badge-sell-panel-v81{margin:24px auto 42px;display:grid;grid-template-columns:minmax(260px,.38fr) minmax(0,1fr);gap:28px;padding:30px;border:1px solid rgba(34,197,94,.28);border-radius:28px;background:radial-gradient(circle at 0% 0%,rgba(16,185,129,.20),transparent 35%),linear-gradient(180deg,rgba(12,16,31,.94),rgba(5,8,18,.92));box-shadow:0 22px 70px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.06);}
.badge-sell-copy-v81 h2{font-size:30px;line-height:1.05;margin:8px 0 12px;color:#fff;}
.badge-sell-copy-v81 p{margin:0;color:#b8c0d4;max-width:360px;}
.badge-sell-form-v81{display:grid;gap:18px;align-content:start;}
.sell-badge-picker-v81{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:14px;align-items:stretch;}
.sell-badge-option-v81{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;min-height:88px;padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.035));box-shadow:inset 0 1px 0 rgba(255,255,255,.06);cursor:pointer;overflow:hidden;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease;}
.sell-badge-option-v81:hover{transform:translateY(-2px);border-color:rgba(129,140,248,.42);background:linear-gradient(180deg,rgba(99,102,241,.12),rgba(255,255,255,.04));}
.sell-badge-option-v81 input{position:absolute;opacity:0;pointer-events:none;}
.sell-badge-option-v81:has(input:checked){border-color:rgba(99,102,241,.78);box-shadow:0 0 0 1px rgba(99,102,241,.28),0 18px 45px rgba(99,102,241,.14),inset 0 1px 0 rgba(255,255,255,.08);background:radial-gradient(circle at 0% 50%,rgba(99,102,241,.22),transparent 50%),linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04));}
.sell-badge-option-v81.is-listed{opacity:.55;cursor:not-allowed;filter:saturate(.65);}
.sell-badge-render-v81{display:flex;align-items:center;justify-content:center;min-width:116px;max-width:140px;min-height:50px;padding:8px;border-radius:16px;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.07);}
.sell-badge-info-v81{display:grid;gap:3px;min-width:0;}
.sell-badge-info-v81 b{color:#fff;font-size:16px;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sell-badge-info-v81 small{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#aeb6ca;}
.sell-badge-option-v81 em{display:none!important;}
.sell-price-row-v81{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:12px;align-items:end;}
.sell-price-row-v81 label{display:grid;gap:8px;color:#dbeafe;font-weight:900;}
.sell-price-row-v81 .btn{height:54px;padding-inline:22px;white-space:nowrap;}
@media(max-width:900px){.badge-sell-panel-v81{grid-template-columns:1fr;padding:22px}.sell-price-row-v81{grid-template-columns:1fr}.sell-badge-picker-v81{grid-template-columns:1fr}}

/* V86: draggable profile badge ordering */
.profile-badge-visibility-panel[data-badge-sort-list]{
    gap:12px;
}
.profile-badge-visibility-panel[data-badge-sort-list] > .muted{
    margin:0 0 4px;
}
.profile-badge-toggle-row[draggable="true"]{
    cursor:grab;
    user-select:none;
}
.profile-badge-toggle-row[draggable="true"]:active,
.profile-badge-toggle-row.is-dragging{
    cursor:grabbing;
}
.profile-badge-toggle-row.is-dragging{
    opacity:.55;
    transform:scale(.985);
    border-color:rgba(139,92,246,.55);
    box-shadow:0 16px 34px rgba(0,0,0,.28), 0 0 0 1px rgba(139,92,246,.18);
}
.badge-drag-handle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:24px;
    min-width:24px;
    height:34px;
    border-radius:10px;
    color:#8f98c7;
    background:rgba(255,255,255,.045);
    border:1px solid rgba(255,255,255,.06);
    font-weight:900;
    letter-spacing:-4px;
    padding-right:4px;
}
.badge-show-check{
    display:flex;
    align-items:center;
    gap:8px;
    min-width:92px;
    color:#aeb6d8;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.badge-show-check input{width:18px;height:18px;accent-color:#8b5cf6;}
.badge-drag-preview{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    margin-left:auto;
    justify-content:flex-end;
}
.badge-drag-preview small{
    color:#8f98c7;
    font-weight:800;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.profile-badge-toggle-row .badge-show-check + .badge-drag-preview{
    flex:1;
}
.profile-badge-toggle-row > span:last-child:not(.badge-drag-handle){
    margin-left:0;
}
@media (max-width: 720px){
    .profile-badge-toggle-row[draggable="true"]{align-items:flex-start;}
    .badge-drag-preview{justify-content:flex-start;margin-left:0;width:100%;}
}

/* V87: fixed profile badge drag ordering layout + handle-only pointer drag */
.profile-badge-visibility-panel[data-badge-sort-list]{
    display:grid !important;
    gap:12px !important;
    padding:16px !important;
}
.profile-badge-toggle-row[data-badge-row]{
    display:grid !important;
    grid-template-columns:42px minmax(150px, auto) minmax(0, 1fr) 120px !important;
    align-items:center !important;
    gap:14px !important;
    min-height:76px !important;
    padding:12px 16px !important;
    border:1px solid rgba(255,255,255,.10) !important;
    border-radius:16px !important;
    background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.028)) !important;
    cursor:default !important;
    user-select:none !important;
    overflow:visible !important;
}
.profile-badge-toggle-row[data-badge-row]:hover{
    border-color:rgba(129,140,248,.28) !important;
    background:linear-gradient(180deg,rgba(129,140,248,.085),rgba(255,255,255,.032)) !important;
}
.badge-drag-handle{
    appearance:none !important;
    border:1px solid rgba(255,255,255,.10) !important;
    background:rgba(255,255,255,.055) !important;
    color:#aeb6d8 !important;
    width:34px !important;
    height:42px !important;
    min-width:34px !important;
    border-radius:12px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    cursor:grab !important;
    font-size:18px !important;
    font-weight:1000 !important;
    letter-spacing:-5px !important;
    line-height:1 !important;
    padding:0 5px 0 0 !important;
    touch-action:none !important;
}
.badge-drag-handle:hover{
    color:#fff !important;
    border-color:rgba(139,92,246,.55) !important;
    background:rgba(139,92,246,.18) !important;
}
.badge-reorder-active,
.badge-reorder-active *{
    cursor:grabbing !important;
    user-select:none !important;
}
.profile-badge-toggle-row.is-dragging{
    opacity:.95 !important;
    transform:scale(1.015) !important;
    border-color:rgba(139,92,246,.7) !important;
    box-shadow:0 22px 60px rgba(0,0,0,.42),0 0 0 1px rgba(139,92,246,.24),0 0 34px rgba(139,92,246,.18) !important;
}
.badge-drag-placeholder{
    border:1px dashed rgba(139,92,246,.75) !important;
    border-radius:16px !important;
    background:rgba(139,92,246,.10) !important;
    box-shadow:inset 0 0 24px rgba(139,92,246,.08) !important;
}
.badge-drag-preview{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:140px !important;
    margin:0 !important;
    padding:8px 10px !important;
    border-radius:14px !important;
    background:rgba(0,0,0,.18) !important;
    border:1px solid rgba(255,255,255,.07) !important;
    overflow:hidden !important;
}
.badge-drag-preview .lrp-user-badge{
    margin:0 !important;
}
.badge-drag-meta{
    display:grid !important;
    gap:4px !important;
    min-width:0 !important;
}
.badge-drag-meta strong{
    color:#fff !important;
    font-size:15px !important;
    font-weight:950 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
}
.badge-drag-meta small{
    color:#9aa4c6 !important;
    font-size:11px !important;
    font-weight:850 !important;
    text-transform:uppercase !important;
    letter-spacing:.08em !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
}
.badge-show-check{
    justify-self:end !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:9px !important;
    min-width:108px !important;
    color:#dbeafe !important;
    font-size:13px !important;
    font-weight:900 !important;
    text-transform:none !important;
    letter-spacing:0 !important;
    cursor:pointer !important;
}
.badge-show-check input{
    width:18px !important;
    height:18px !important;
    accent-color:#8b5cf6 !important;
    flex:0 0 auto !important;
}
@media(max-width:760px){
    .profile-badge-toggle-row[data-badge-row]{
        grid-template-columns:38px 1fr auto !important;
        gap:10px !important;
    }
    .badge-drag-preview{grid-column:2 / 4;justify-content:flex-start !important;min-width:0 !important;}
    .badge-drag-meta{grid-column:2 / 3;}
    .badge-show-check{grid-column:3 / 4;grid-row:1 / 2;min-width:0 !important;}
}
}
@media (max-width: 720px){
    .profile-badge-toggle-row[draggable="true"]{align-items:flex-start;}
    .badge-drag-preview{justify-content:flex-start;margin-left:0;width:100%;}
}

/* V87: fixed profile badge drag ordering layout + handle-only pointer drag */
.profile-badge-visibility-panel[data-badge-sort-list]{display:grid !important;gap:12px !important;padding:16px !important;}
.profile-badge-toggle-row[data-badge-row]{display:grid !important;grid-template-columns:42px minmax(150px, auto) minmax(0, 1fr) 120px !important;align-items:center !important;gap:14px !important;min-height:76px !important;padding:12px 16px !important;border:1px solid rgba(255,255,255,.10) !important;border-radius:16px !important;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.028)) !important;cursor:default !important;user-select:none !important;overflow:visible !important;}
.badge-drag-handle{appearance:none !important;border:1px solid rgba(255,255,255,.10) !important;background:rgba(255,255,255,.055) !important;color:#aeb6d8 !important;width:34px !important;height:42px !important;min-width:34px !important;border-radius:12px !important;display:flex !important;align-items:center !important;justify-content:center !important;cursor:grab !important;font-size:18px !important;font-weight:1000 !important;letter-spacing:-5px !important;line-height:1 !important;padding:0 5px 0 0 !important;touch-action:none !important;}
.badge-reorder-active,.badge-reorder-active *{cursor:grabbing !important;user-select:none !important;}.profile-badge-toggle-row.is-dragging{opacity:.95 !important;transform:scale(1.015) !important;border-color:rgba(139,92,246,.7) !important;box-shadow:0 22px 60px rgba(0,0,0,.42),0 0 0 1px rgba(139,92,246,.24),0 0 34px rgba(139,92,246,.18) !important;}.badge-drag-placeholder{border:1px dashed rgba(139,92,246,.75) !important;border-radius:16px !important;background:rgba(139,92,246,.10) !important;box-shadow:inset 0 0 24px rgba(139,92,246,.08) !important;}
.badge-drag-preview{display:flex !important;align-items:center !important;justify-content:center !important;min-width:140px !important;margin:0 !important;padding:8px 10px !important;border-radius:14px !important;background:rgba(0,0,0,.18) !important;border:1px solid rgba(255,255,255,.07) !important;overflow:hidden !important;}.badge-drag-preview .lrp-user-badge{margin:0 !important;}.badge-drag-meta{display:grid !important;gap:4px !important;min-width:0 !important;}.badge-drag-meta strong{color:#fff !important;font-size:15px !important;font-weight:950 !important;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;}.badge-drag-meta small{color:#9aa4c6 !important;font-size:11px !important;font-weight:850 !important;text-transform:uppercase !important;letter-spacing:.08em !important;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;}.badge-show-check{justify-self:end !important;display:flex !important;align-items:center !important;justify-content:flex-end !important;gap:9px !important;min-width:108px !important;color:#dbeafe !important;font-size:13px !important;font-weight:900 !important;text-transform:none !important;letter-spacing:0 !important;cursor:pointer !important;}.badge-show-check input{width:18px !important;height:18px !important;accent-color:#8b5cf6 !important;flex:0 0 auto !important;}
@media(max-width:760px){.profile-badge-toggle-row[data-badge-row]{grid-template-columns:38px 1fr auto !important;gap:10px !important;}.badge-drag-preview{grid-column:2 / 4;justify-content:flex-start !important;min-width:0 !important;}.badge-drag-meta{grid-column:2 / 3;}.badge-show-check{grid-column:3 / 4;grid-row:1 / 2;min-width:0 !important;}}

/* V88: reliable native badge reorder + cleaner profile edit alignment */
.profile-badge-visibility-panel[data-badge-sort-list]{
    display:grid !important;
    gap:12px !important;
    padding:18px !important;
    overflow:hidden !important;
}
.profile-badge-toggle-row[data-badge-row]{
    display:grid !important;
    grid-template-columns:40px minmax(180px, 260px) minmax(150px, 1fr) 120px !important;
    align-items:center !important;
    gap:14px !important;
    padding:12px 14px !important;
    min-height:72px !important;
    user-select:none !important;
    -webkit-user-select:none !important;
}
.badge-drag-handle{
    cursor:grab !important;
    user-select:none !important;
    -webkit-user-select:none !important;
    touch-action:none !important;
}
.badge-drag-handle:active{cursor:grabbing !important;}
.profile-badge-toggle-row.is-dragging{
    opacity:.45 !important;
    transform:scale(.995) !important;
    outline:1px dashed rgba(139,92,246,.85) !important;
}
.badge-drag-preview{
    justify-self:start !important;
    width:100% !important;
    max-width:260px !important;
}
.badge-drag-meta{justify-self:start !important;text-align:left !important;}
.badge-show-check{justify-self:end !important;}
.badge-reorder-active,
.badge-reorder-active *{
    user-select:none !important;
    -webkit-user-select:none !important;
}
@media(max-width:760px){
    .profile-badge-toggle-row[data-badge-row]{grid-template-columns:40px 1fr auto !important;}
    .badge-drag-preview{grid-column:2 / 4 !important;max-width:none !important;}
    .badge-drag-meta{grid-column:2 / 3 !important;}
}

/* LightRP applications */
.applications-hero{border:1px solid rgba(139,125,255,.28);background:linear-gradient(135deg,rgba(26,22,72,.92),rgba(7,10,20,.9));box-shadow:0 22px 80px rgba(78,65,255,.16);border-radius:24px;padding:34px;margin-bottom:24px;position:relative;overflow:hidden}.applications-hero:before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle at 22% 20%,rgba(117,92,255,.34),transparent 32%),radial-gradient(circle at 80% 30%,rgba(0,255,170,.12),transparent 28%);pointer-events:none}.applications-hero>*{position:relative}.applications-hero span{display:block;text-transform:uppercase;letter-spacing:.18em;color:#aaa6ff;font-weight:900;font-size:12px}.applications-hero h1{font-size:42px;margin:10px 0;color:#fff}.applications-hero p{max-width:760px;color:#c8c9da;font-size:16px}.applications-hero.compact{padding:26px}.applications-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-bottom:24px}.application-card{display:block;text-decoration:none;color:#fff;border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,rgba(29,31,53,.9),rgba(10,12,24,.96));border-radius:22px;padding:22px;min-height:210px;box-shadow:0 18px 50px rgba(0,0,0,.22);transition:.18s ease}.application-card:hover{transform:translateY(-4px);border-color:rgba(123,106,255,.7);box-shadow:0 24px 70px rgba(92,77,255,.22)}.application-card>div{display:flex;justify-content:space-between;gap:10px;align-items:center}.app-pill,.app-count{display:inline-flex;border-radius:999px;padding:7px 10px;background:rgba(124,104,255,.18);border:1px solid rgba(124,104,255,.28);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#d8d5ff}.app-count{background:rgba(255,255,255,.06);color:#bfc1d3}.application-card h2{font-size:24px;margin:22px 0 10px}.application-card p{color:#bfc1d3;line-height:1.45;min-height:46px}.application-card b{display:inline-block;margin-top:14px;color:#9df7c4}.applications-panel,.application-submit-panel,.application-review-panel{padding:24px;border-radius:22px}.section-title h2{margin:0}.section-title p{color:#aeb0c4}.application-response-list{display:grid;gap:10px}.application-response-row{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;text-decoration:none;color:#fff;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);padding:14px;border-radius:14px}.application-response-row span{color:#aeb0c4}.application-response-row em{font-style:normal;border-radius:999px;padding:6px 10px;font-weight:900;text-transform:uppercase;font-size:11px}.status-pending,.application-response-row .status-pending{background:rgba(255,193,7,.15);color:#ffd66b}.status-accepted,.application-response-row .status-accepted{background:rgba(57,255,85,.14);color:#7dff92}.status-denied,.application-response-row .status-denied{background:rgba(255,86,102,.15);color:#ff8f9b}.status-withdrawn,.application-response-row .status-withdrawn{background:rgba(255,255,255,.1);color:#d0d0d8}.application-form{display:grid;gap:18px}.lrp-app-field{display:grid;gap:8px}.lrp-app-field label{font-weight:900;color:#fff}.lrp-app-field label b{color:#ffcf66}.lrp-app-field p{margin:0;color:#aeb0c4}.lrp-app-field input,.lrp-app-field select,.lrp-app-field textarea{width:100%;box-sizing:border-box;border:1px solid rgba(255,255,255,.14);background:rgba(5,7,15,.86);color:#fff;border-radius:14px;padding:14px;font:inherit}.lrp-app-field textarea{min-height:140px;resize:vertical}.lrp-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.lrp-choice-grid label{display:flex;gap:10px;align-items:center;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:12px}.application-view-card{align-items:flex-start}.application-answer-list{display:grid;gap:14px;width:100%}.application-answer{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);border-radius:16px;padding:16px}.application-answer b{display:block;color:#aaa6ff;margin-bottom:8px}.application-answer p{margin:0;white-space:normal;color:#f4f4fb;line-height:1.5}.empty-panel{padding:24px}

/* V92 Applications 10/10 renderer */
.application-submit-panel {
    padding: 0 !important;
    overflow: hidden;
    border-radius: 28px !important;
    border: 1px solid rgba(147, 139, 255, .22) !important;
    background: linear-gradient(180deg, rgba(12, 15, 28, .92), rgba(7, 9, 18, .96)) !important;
    box-shadow: 0 28px 90px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.04) !important;
}
.application-form {
    gap: 0 !important;
    padding: 22px;
}
.application-form .btn.primary,
.application-form button.primary {
    margin-top: 20px;
    min-height: 54px;
    border-radius: 16px;
    font-size: 15px;
    letter-spacing: .02em;
    box-shadow: 0 18px 40px rgba(95, 78, 255, .26);
}
.lrp-app-field {
    display: grid !important;
    gap: 14px !important;
    padding: 20px 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.075);
}
.lrp-app-field:last-of-type { border-bottom: 0; }
.lrp-app-question-head {
    display: grid;
    grid-template-columns: 38px minmax(0,1fr);
    gap: 14px;
    align-items: flex-start;
}
.lrp-app-question-num {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(91,75,255,.32), rgba(32,225,151,.12));
    border: 1px solid rgba(150,142,255,.22);
    color: #d8d4ff;
    font-weight: 950;
    font-size: 13px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}
.lrp-app-question-head label {
    display: block;
    font-size: 18px;
    line-height: 1.25;
    letter-spacing: -.015em;
}
.lrp-app-question-head label b { color: #ffce5c; }
.lrp-app-question-head p {
    margin-top: 6px !important;
    color: #aeb2ca !important;
    line-height: 1.35;
}
.lrp-app-field input:not([type="radio"]):not([type="checkbox"]),
.lrp-app-field select,
.lrp-app-field textarea {
    border-radius: 16px !important;
    border: 1px solid rgba(255,255,255,.13) !important;
    background: rgba(4,7,15,.78) !important;
    min-height: 52px;
    padding: 15px 16px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}
.lrp-app-field input:not([type="radio"]):not([type="checkbox"]):focus,
.lrp-app-field select:focus,
.lrp-app-field textarea:focus {
    outline: none;
    border-color: rgba(134, 118, 255, .68) !important;
    box-shadow: 0 0 0 4px rgba(104, 91, 255, .12), inset 0 1px 0 rgba(255,255,255,.04) !important;
}
.lrp-choice-list {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
}
.lrp-choice-list label,
.lrp-choice-grid.compact label {
    cursor: pointer;
    display: flex !important;
    align-items: center;
    gap: 12px;
    min-height: 48px;
    padding: 13px 15px !important;
    border-radius: 15px !important;
    background: rgba(255,255,255,.045) !important;
    border: 1px solid rgba(255,255,255,.095) !important;
    color: #f7f7ff !important;
    font-weight: 850 !important;
    transition: transform .14s ease, border-color .14s ease, background .14s ease, box-shadow .14s ease;
}
.lrp-choice-list label:hover,
.lrp-choice-grid.compact label:hover,
.lrp-rating-scale label:hover {
    transform: translateY(-1px);
    border-color: rgba(130, 118, 255, .45) !important;
    background: rgba(112, 98, 255, .10) !important;
}
.lrp-choice-list input,
.lrp-choice-grid.compact input,
.lrp-rating-scale input {
    accent-color: #7b61ff;
}
.lrp-choice-list label:has(input:checked),
.lrp-choice-grid.compact label:has(input:checked) {
    border-color: rgba(116, 100, 255, .72) !important;
    background: linear-gradient(135deg, rgba(94,78,255,.20), rgba(25,215,143,.07)) !important;
    box-shadow: 0 12px 28px rgba(76,65,220,.12), inset 0 1px 0 rgba(255,255,255,.04);
}
.lrp-choice-grid.compact {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(150px, 220px)) !important;
    justify-content: start;
    gap: 10px !important;
}
.lrp-rating-scale {
    display: grid;
    grid-template-columns: repeat(10, minmax(42px, 1fr));
    gap: 8px;
    max-width: 820px;
}
.lrp-rating-scale label {
    cursor: pointer;
    position: relative;
    display: flex !important;
    align-items: center;
    justify-content: center;
    height: 48px;
    border-radius: 14px;
    background: rgba(255,255,255,.045);
    border: 1px solid rgba(255,255,255,.095);
    font-weight: 950 !important;
    color: #dfe1f4 !important;
    transition: .14s ease;
}
.lrp-rating-scale label input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.lrp-rating-scale label span { position: relative; z-index: 2; }
.lrp-rating-scale label:has(input:checked) {
    color: #fff !important;
    border-color: rgba(117, 102, 255, .82);
    background: linear-gradient(135deg, #3f63ff, #7b4dff);
    box-shadow: 0 14px 32px rgba(94, 78, 255, .28);
}
.lrp-choice-list.checklist label:has(input:checked) span::before {
    content: "✓ ";
    color: #7dff9c;
}
@media (max-width: 900px) {
    .lrp-rating-scale { grid-template-columns: repeat(5, minmax(44px, 1fr)); }
    .lrp-app-question-head { grid-template-columns: 1fr; }
    .lrp-app-question-num { width: auto; justify-content: flex-start; padding: 0 12px; }
}
@media (max-width: 560px) {
    .application-form { padding: 14px; }
    .lrp-rating-scale { grid-template-columns: repeat(2, minmax(90px, 1fr)); }
    .lrp-choice-grid.compact { grid-template-columns: 1fr !important; }
}

/* V100 homepage compact hero + leaderboards page */
.forum-home-hero-mini {
    min-height: 0 !important;
    padding: 18px 24px !important;
    margin: 12px 0 18px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    border-radius: 20px !important;
}

.forum-home-hero-mini span {
    font-size: 12px !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    color: rgba(190, 184, 255, .88) !important;
    font-weight: 900 !important;
}

.forum-home-hero-mini h1 {
    margin: 6px 0 6px !important;
    font-size: clamp(26px, 3vw, 38px) !important;
    line-height: 1 !important;
}

.forum-home-hero-mini p {
    margin: 0 !important;
    max-width: 780px !important;
    color: rgba(255,255,255,.78) !important;
    font-size: 15px !important;
}

.forum-home-hero-mini .btn {
    flex: 0 0 auto;
    white-space: nowrap;
}

.leaderboards-page-panel {
    margin-top: 18px !important;
}

.leaderboard-row-large {
    grid-template-columns: 42px 48px minmax(0, 1fr) auto !important;
    padding: 12px 14px !important;
}

.leaderboard-row-large .leaderboard-place {
    width: 34px;
    height: 34px;
}

.leaderboard-row-large .leaderboard-avatar {
    width: 48px;
    height: 48px;
}

@media (max-width: 760px) {
    .forum-home-hero-mini {
        align-items: flex-start !important;
        flex-direction: column !important;
        padding: 16px !important;
    }

    .forum-home-hero-mini .btn {
        width: 100%;
        justify-content: center;
    }
}

/* V50 LightRP in-game inventory profile tab */
.lrp-inv-shell{max-width:1180px;margin:0 auto 40px;display:grid;gap:18px}.lrp-inv-topbar{position:relative;overflow:hidden;border:1px solid rgba(120,140,255,.22);border-radius:28px;background:radial-gradient(circle at 15% 0%,rgba(80,116,255,.22),transparent 34%),linear-gradient(180deg,rgba(18,22,42,.96),rgba(9,11,22,.96));box-shadow:0 28px 90px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.08);padding:22px;display:flex;gap:18px;justify-content:space-between;align-items:center}.lrp-inv-topbar:before{content:"";position:absolute;inset:-80px -120px auto auto;width:360px;height:360px;background:radial-gradient(circle,rgba(57,255,85,.14),transparent 60%);pointer-events:none}.lrp-inv-player{position:relative;display:flex;align-items:center;gap:16px;min-width:0}.lrp-inv-player img,.lrp-inv-avatar-fallback{width:82px;height:82px;border-radius:22px;object-fit:cover;border:1px solid rgba(255,255,255,.16);box-shadow:0 16px 35px rgba(0,0,0,.45)}.lrp-inv-avatar-fallback{display:grid;place-items:center;background:linear-gradient(135deg,#1b2445,#0e1325);font-size:32px;font-weight:1000;color:#fff}.lrp-inv-player span{display:inline-flex;text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:900;color:#39ff55;text-shadow:0 0 18px rgba(57,255,85,.55)}.lrp-inv-player h1{margin:4px 0;font-size:34px;line-height:1}.lrp-inv-player p{margin:0;color:#aab4d6;font-size:13px}.lrp-inv-stats{position:relative;display:grid;grid-template-columns:repeat(4,minmax(105px,1fr));gap:10px}.lrp-inv-stats div{border:1px solid rgba(255,255,255,.10);border-radius:18px;background:rgba(255,255,255,.045);padding:13px 14px;text-align:right}.lrp-inv-stats span{display:block;color:#8f9bc2;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.lrp-inv-stats b{display:block;margin-top:4px;color:#fff;font-size:20px}.lrp-inv-tabs{display:flex;gap:10px;flex-wrap:wrap}.lrp-inv-tabs a{padding:11px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.10);background:rgba(11,14,28,.72);color:#c9d3f5;text-decoration:none;font-weight:900}.lrp-inv-tabs a.active,.lrp-inv-tabs a:hover{border-color:rgba(57,255,85,.45);background:rgba(57,255,85,.10);color:#fff;box-shadow:0 0 24px rgba(57,255,85,.10)}.lrp-inv-category{border:1px solid rgba(255,255,255,.10);border-radius:24px;background:linear-gradient(180deg,rgba(14,18,34,.82),rgba(8,10,20,.82));padding:18px;box-shadow:0 18px 50px rgba(0,0,0,.28)}.lrp-inv-category-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.lrp-inv-category-head h2{margin:0;font-size:20px}.lrp-inv-category-head span{color:#8f9bc2;font-weight:900;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.lrp-inv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}.lrp-inv-item{position:relative;overflow:hidden;min-height:184px;border-radius:22px;border:1px solid rgba(255,255,255,.12);background:radial-gradient(circle at 50% 15%,rgba(255,255,255,.10),transparent 42%),linear-gradient(180deg,rgba(31,38,70,.94),rgba(10,12,24,.96));box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 16px 34px rgba(0,0,0,.34);padding:12px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.lrp-inv-item:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.28);box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 24px 48px rgba(0,0,0,.42)}.lrp-inv-item:before{content:"";position:absolute;inset:auto -40px -70px auto;width:150px;height:150px;border-radius:50%;background:rgba(255,255,255,.06);pointer-events:none}.lrp-inv-item-icon{position:relative;height:92px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.08);overflow:hidden}.lrp-inv-item-icon img{max-width:86%;max-height:86%;object-fit:contain;filter:drop-shadow(0 12px 14px rgba(0,0,0,.55))}.lrp-inv-item-icon span{font-size:42px;filter:drop-shadow(0 12px 14px rgba(0,0,0,.55))}.lrp-inv-item-icon em{position:absolute;right:8px;bottom:8px;border-radius:999px;padding:3px 8px;background:rgba(0,0,0,.62);border:1px solid rgba(255,255,255,.14);color:#fff;font-style:normal;font-size:12px;font-weight:1000}.lrp-inv-item-info h3{margin:10px 0 4px;font-size:15px;line-height:1.16;color:#fff}.lrp-inv-item-info p{margin:0;color:#9ba8cf;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.lrp-inv-item-info small{display:block;margin-top:6px;color:#68749b;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lrp-inv-empty{border:1px dashed rgba(255,255,255,.16);border-radius:26px;background:rgba(8,10,20,.68);padding:34px;text-align:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}.lrp-inv-empty h2{margin:0 0 8px}.lrp-inv-empty p{margin:0 auto 12px;max-width:680px;color:#aeb8da}.lrp-inv-empty small{display:block;color:#7f8bb4}.lrp-inv-footnote{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;color:#7f8bb4;font-size:12px;font-weight:800}.lrp-inv-item.rarity-common{border-color:rgba(180,190,210,.16)}.lrp-inv-item.rarity-uncommon{border-color:rgba(57,255,85,.28);box-shadow:0 0 24px rgba(57,255,85,.06),0 16px 34px rgba(0,0,0,.34)}.lrp-inv-item.rarity-rare{border-color:rgba(68,145,255,.42);box-shadow:0 0 26px rgba(68,145,255,.10),0 16px 34px rgba(0,0,0,.34)}.lrp-inv-item.rarity-epic{border-color:rgba(180,90,255,.45);box-shadow:0 0 30px rgba(180,90,255,.12),0 16px 34px rgba(0,0,0,.34)}.lrp-inv-item.rarity-legendary{border-color:rgba(255,185,58,.52);box-shadow:0 0 32px rgba(255,185,58,.14),0 16px 34px rgba(0,0,0,.34)}.lrp-inv-item.rarity-mythic,.lrp-inv-item.rarity-special{border-color:rgba(255,70,170,.58);box-shadow:0 0 36px rgba(255,70,170,.16),0 16px 34px rgba(0,0,0,.34)}.lrp-inv-item.rarity-contraband{border-color:rgba(255,58,58,.52);box-shadow:0 0 34px rgba(255,58,58,.14),0 16px 34px rgba(0,0,0,.34)}@media(max-width:900px){.lrp-inv-topbar{align-items:stretch;flex-direction:column}.lrp-inv-stats{grid-template-columns:repeat(2,1fr)}.lrp-inv-stats div{text-align:left}}@media(max-width:560px){.lrp-inv-player{align-items:flex-start}.lrp-inv-player img,.lrp-inv-avatar-fallback{width:64px;height:64px;border-radius:18px}.lrp-inv-player h1{font-size:26px}.lrp-inv-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.lrp-inv-item{min-height:168px}.lrp-inv-item-icon{height:82px}.lrp-inv-stats{grid-template-columns:1fr 1fr}.lrp-inv-stats b{font-size:17px}}

/* LightRP profile inventory - in-game list/category view */
.lrp-inv-list-panel{border:1px solid rgba(255,255,255,.10);border-radius:24px;background:linear-gradient(180deg,rgba(10,13,27,.82),rgba(6,8,17,.88));padding:16px;box-shadow:0 18px 50px rgba(0,0,0,.28)}
.lrp-inv-list-head{display:grid;grid-template-columns:minmax(260px,1fr) 120px 130px minmax(170px,.8fr);gap:14px;align-items:center;padding:10px 14px;margin-bottom:14px;border-radius:10px;background:rgba(255,255,255,.035);color:rgba(255,255,255,.58);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.lrp-inv-list-panel .lrp-inv-category{border:0;border-radius:0;background:transparent;padding:0;box-shadow:none;margin:0 0 18px}.lrp-inv-list-panel .lrp-inv-category:last-child{margin-bottom:0}
.lrp-inv-list-panel .lrp-inv-category-head{margin:18px 0 12px;padding:12px 18px;border-radius:12px;background:rgba(255,255,255,.08);min-height:44px}.lrp-inv-list-panel .lrp-inv-category:first-of-type .lrp-inv-category-head{margin-top:0}
.lrp-inv-list{display:grid;gap:8px}.lrp-inv-row{position:relative;display:grid;grid-template-columns:minmax(260px,1fr) 120px 130px minmax(170px,.8fr);gap:14px;align-items:center;padding:11px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.075);background:linear-gradient(90deg,rgba(255,255,255,.055),rgba(255,255,255,.025));box-shadow:inset 0 1px 0 rgba(255,255,255,.045);transition:background .14s ease,border-color .14s ease,transform .14s ease}.lrp-inv-row:hover{transform:translateX(2px);border-color:rgba(255,255,255,.18);background:linear-gradient(90deg,rgba(255,255,255,.075),rgba(255,255,255,.035))}
.lrp-inv-row-main{display:flex;align-items:center;gap:14px;min-width:0}.lrp-inv-row-icon{width:44px;height:44px;flex:0 0 44px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.lrp-inv-row-icon img{max-width:34px;max-height:34px;object-fit:contain;filter:drop-shadow(0 8px 10px rgba(0,0,0,.45))}.lrp-inv-row-icon span{font-size:22px;line-height:1}.lrp-inv-row-title{min-width:0}.lrp-inv-row-title h3{margin:0;color:#fff;font-size:15px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lrp-inv-row-title small{display:block;margin-top:3px;color:rgba(255,255,255,.45);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lrp-inv-owned{display:inline-flex;align-items:center;justify-content:center;min-width:82px;padding:7px 10px;border-radius:999px;color:#37ff70;background:rgba(31,255,103,.10);border:1px solid rgba(31,255,103,.26);font-weight:900;font-size:12px}.lrp-inv-type{font-size:12px;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:.06em}.lrp-inv-detail{color:rgba(255,255,255,.62);font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lrp-inv-row.rarity-common{border-left:3px solid rgba(180,190,210,.38)}.lrp-inv-row.rarity-uncommon{border-left:3px solid rgba(57,255,85,.65)}.lrp-inv-row.rarity-rare{border-left:3px solid rgba(68,145,255,.75)}.lrp-inv-row.rarity-epic{border-left:3px solid rgba(180,90,255,.78)}.lrp-inv-row.rarity-legendary{border-left:3px solid rgba(255,185,58,.85)}.lrp-inv-row.rarity-mythic,.lrp-inv-row.rarity-special{border-left:3px solid rgba(255,70,170,.85)}.lrp-inv-row.rarity-contraband{border-left:3px solid rgba(255,58,58,.82)}
@media(max-width:820px){.lrp-inv-list-head{display:none}.lrp-inv-row{grid-template-columns:1fr;gap:9px}.lrp-inv-owned,.lrp-inv-type,.lrp-inv-detail{justify-self:start}.lrp-inv-detail{white-space:normal}.lrp-inv-list-panel{padding:12px}}

/* V51 profile inventory - website themed read-only list */
.lrp-inv-shell{display:grid;gap:18px;max-width:1180px;margin:0 auto 40px}.lrp-inv-topbar{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:radial-gradient(circle at 18% 0%,rgba(79,70,229,.22),transparent 36%),rgba(10,14,24,.90);box-shadow:0 20px 55px rgba(0,0,0,.38);backdrop-filter:blur(18px);padding:20px;display:flex;gap:18px;justify-content:space-between;align-items:center}.lrp-inv-topbar:before{display:none}.lrp-inv-player{display:flex;align-items:center;gap:14px;min-width:0}.lrp-inv-player img,.lrp-inv-avatar-fallback{width:68px;height:68px;border-radius:18px;object-fit:cover;border:1px solid rgba(255,255,255,.14);box-shadow:0 14px 34px rgba(0,0,0,.34)}.lrp-inv-avatar-fallback{display:grid;place-items:center;background:rgba(255,255,255,.06);font-size:26px;font-weight:1000;color:#fff}.lrp-inv-player span{display:inline-flex;color:#8fa2ff;text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:900}.lrp-inv-player h1{margin:3px 0;font-size:30px;line-height:1;color:#fff}.lrp-inv-player p{margin:0;color:rgba(255,255,255,.58);font-size:13px}.lrp-inv-stats{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));gap:10px}.lrp-inv-stats div{border:1px solid rgba(255,255,255,.10);border-radius:16px;background:rgba(255,255,255,.045);padding:12px 14px;text-align:right}.lrp-inv-stats span{display:block;color:rgba(255,255,255,.50);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.lrp-inv-stats b{display:block;margin-top:4px;color:#fff;font-size:18px}.lrp-inv-tabs{display:flex;gap:10px;flex-wrap:wrap}.lrp-inv-tabs a{padding:10px 15px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045);color:#cfd6ff;text-decoration:none;font-weight:900}.lrp-inv-tabs a.active,.lrp-inv-tabs a:hover{border-color:rgba(115,100,255,.45);background:rgba(79,70,229,.16);color:#fff}.lrp-inv-list-panel{border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(10,14,24,.90);box-shadow:0 20px 55px rgba(0,0,0,.38);backdrop-filter:blur(18px);padding:16px}.lrp-inv-list-head{display:grid;grid-template-columns:minmax(260px,1fr) 120px 130px minmax(170px,.8fr);gap:14px;align-items:center;padding:10px 14px;margin-bottom:12px;border-radius:14px;background:rgba(255,255,255,.045);color:rgba(255,255,255,.52);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.lrp-inv-list-panel .lrp-inv-category{border:0;border-radius:0;background:transparent;padding:0;box-shadow:none;margin:0 0 18px}.lrp-inv-list-panel .lrp-inv-category:last-child{margin-bottom:0}.lrp-inv-list-panel .lrp-inv-category-head{display:flex;align-items:center;justify-content:space-between;margin:14px 0 10px;padding:10px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.045)}.lrp-inv-list-panel .lrp-inv-category:first-of-type .lrp-inv-category-head{margin-top:0}.lrp-inv-category-head h2{margin:0;color:#fff;font-size:18px}.lrp-inv-category-head span{color:rgba(255,255,255,.52);font-weight:900;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.lrp-inv-list{display:grid;gap:8px}.lrp-inv-row{position:relative;display:grid;grid-template-columns:minmax(260px,1fr) 120px 130px minmax(170px,.8fr);gap:14px;align-items:center;padding:11px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);box-shadow:inset 0 1px 0 rgba(255,255,255,.04);transition:background .14s ease,border-color .14s ease,transform .14s ease}.lrp-inv-row:hover{transform:translateY(-1px);border-color:rgba(115,100,255,.35);background:rgba(255,255,255,.055)}.lrp-inv-row-main{display:flex;align-items:center;gap:12px;min-width:0}.lrp-inv-row-icon{width:42px;height:42px;flex:0 0 42px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10)}.lrp-inv-row-icon img{max-width:32px;max-height:32px;object-fit:contain}.lrp-inv-row-icon span{font-size:21px;line-height:1}.lrp-inv-row-title{min-width:0}.lrp-inv-row-title h3{margin:0;color:#fff;font-size:15px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lrp-inv-row-title small{display:block;margin-top:3px;color:rgba(255,255,255,.42);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lrp-inv-owned{display:inline-flex;align-items:center;justify-content:center;min-width:78px;padding:7px 10px;border-radius:999px;color:#cfd6ff;background:rgba(79,70,229,.12);border:1px solid rgba(115,100,255,.24);font-weight:900;font-size:12px}.lrp-inv-type{font-size:12px;font-weight:900;color:rgba(255,255,255,.78);text-transform:uppercase;letter-spacing:.06em}.lrp-inv-detail{color:rgba(255,255,255,.56);font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lrp-inv-row.rarity-common{border-left:3px solid rgba(180,190,210,.28)}.lrp-inv-row.rarity-uncommon{border-left:3px solid rgba(57,255,85,.55)}.lrp-inv-row.rarity-rare{border-left:3px solid rgba(68,145,255,.66)}.lrp-inv-row.rarity-epic{border-left:3px solid rgba(180,90,255,.70)}.lrp-inv-row.rarity-legendary{border-left:3px solid rgba(255,185,58,.76)}.lrp-inv-row.rarity-mythic,.lrp-inv-row.rarity-special{border-left:3px solid rgba(255,70,170,.78)}.lrp-inv-row.rarity-contraband{border-left:3px solid rgba(255,58,58,.76)}.lrp-inv-empty{border:1px dashed rgba(255,255,255,.16);border-radius:22px;background:rgba(10,14,24,.72);padding:30px;text-align:center}.lrp-inv-empty h2{margin:0 0 8px;color:#fff}.lrp-inv-empty p{margin:0 auto 12px;max-width:680px;color:rgba(255,255,255,.62)}.lrp-inv-empty small{display:block;color:rgba(255,255,255,.48)}.lrp-inv-footnote{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;color:rgba(255,255,255,.46);font-size:12px;font-weight:800}@media(max-width:900px){.lrp-inv-topbar{align-items:stretch;flex-direction:column}.lrp-inv-stats{grid-template-columns:repeat(3,1fr)}.lrp-inv-stats div{text-align:left}}@media(max-width:820px){.lrp-inv-list-head{display:none}.lrp-inv-row{grid-template-columns:1fr;gap:9px}.lrp-inv-owned,.lrp-inv-type,.lrp-inv-detail{justify-self:start}.lrp-inv-detail{white-space:normal}.lrp-inv-list-panel{padding:12px}}@media(max-width:560px){.lrp-inv-player{align-items:flex-start}.lrp-inv-player img,.lrp-inv-avatar-fallback{width:58px;height:58px;border-radius:16px}.lrp-inv-player h1{font-size:24px}.lrp-inv-stats{grid-template-columns:1fr}.lrp-inv-stats b{font-size:17px}}


/* LightRP real tsParticles badge layer - contained inside badge bounds */
.lrp-user-badge{
  position:relative!important;
  isolation:isolate;
  overflow:hidden!important;
  transform:translateZ(0);
  backface-visibility:hidden;
  contain:layout paint;
}
.lrp-user-badge .lrp-badge-ts-particles{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:1;
  pointer-events:none;
  overflow:hidden;
  border-radius:inherit;
  opacity:.96;
  mix-blend-mode:screen;
}
.lrp-user-badge .lrp-badge-ts-particles canvas{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  display:block!important;
  pointer-events:none!important;
  border-radius:inherit!important;
}
/* Kill old CSS particle layers so effects no longer collapse into a repeated line */
.lrp-user-badge .lrp-user-badge-particles,
.lrp-user-badge .lrp-user-badge-sparkles{
  display:none!important;
  opacity:0!important;
  animation:none!important;
  background:none!important;
}
.lrp-user-badge .lrp-user-badge-aura,
.lrp-user-badge .lrp-user-badge-shine,
.lrp-user-badge .lrp-user-badge-pattern{
  z-index:2;
}
.lrp-user-badge .lrp-user-badge-icon,
.lrp-user-badge .lrp-user-badge-text{
  position:relative;
  z-index:5;
}
.lrp-user-badge .lrp-badge-hover-card{z-index:30;}

/* new premium visual effects - separate from the tsParticles preset */
.lrp-badge-effect-reactive-glow{box-shadow:0 0 10px color-mix(in srgb,var(--badge-glow),transparent 20%),0 0 28px color-mix(in srgb,var(--badge-gradient),transparent 30%),inset 0 1px 0 rgba(255,255,255,.2)!important;}
.lrp-badge-effect-chroma-shift{animation:lrpBadgeChromaShift 2.6s linear infinite;}
.lrp-badge-effect-molten{background:linear-gradient(135deg,#2a0902,#8a1b05,#ff8a00,#3b0b02)!important;background-size:220% 220%!important;animation:lrpBadgeMolten 2.8s ease-in-out infinite;box-shadow:0 0 16px rgba(255,90,0,.72),inset 0 0 18px rgba(255,178,65,.24)!important;}
.lrp-badge-effect-glacial{background:linear-gradient(135deg,#082032,#0f6d88,#c7f9ff,#1c7ed6)!important;background-size:220% 220%!important;animation:lrpBadgeGlacial 3.2s ease-in-out infinite;box-shadow:0 0 18px rgba(125,230,255,.6),inset 0 0 20px rgba(255,255,255,.22)!important;}
.lrp-badge-effect-glitch-core{animation:lrpBadgeGlitchCore 1.4s steps(2,end) infinite;}
.lrp-badge-effect-luxury-shine{background:linear-gradient(120deg,#4b3203,#d69b18,#fff4b7,#b77906,#3b2501)!important;background-size:240% 100%!important;animation:lrpBadgeLuxury 2.5s linear infinite;box-shadow:0 0 18px rgba(255,210,95,.55)!important;}
.lrp-badge-effect-energy-field{box-shadow:0 0 10px var(--badge-glow),0 0 26px var(--badge-gradient),inset 0 0 14px color-mix(in srgb,var(--badge-color),transparent 60%)!important;animation:lrpBadgeEnergyField 1.8s ease-in-out infinite;}
.lrp-badge-effect-phase-warp{animation:lrpBadgePhaseWarp 2.2s ease-in-out infinite;}
@keyframes lrpBadgeChromaShift{0%{filter:hue-rotate(0deg) saturate(1.15)}100%{filter:hue-rotate(360deg) saturate(1.15)}}
@keyframes lrpBadgeMolten{50%{background-position:100% 40%;filter:brightness(1.15)}}
@keyframes lrpBadgeGlacial{50%{background-position:100% 60%;filter:brightness(1.16) saturate(1.2)}}
@keyframes lrpBadgeGlitchCore{0%,100%{transform:translateZ(0)}33%{filter:contrast(1.4) hue-rotate(18deg);text-shadow:1px 0 #00e5ff,-1px 0 #ff006e}66%{filter:contrast(1.1) hue-rotate(-18deg);text-shadow:-1px 0 #00e5ff,1px 0 #ff006e}}
@keyframes lrpBadgeLuxury{0%{background-position:0 0}100%{background-position:240% 0}}
@keyframes lrpBadgeEnergyField{50%{filter:brightness(1.18);box-shadow:0 0 16px var(--badge-glow),0 0 36px var(--badge-gradient),inset 0 0 20px color-mix(in srgb,var(--badge-color),transparent 50%)}}
@keyframes lrpBadgePhaseWarp{50%{filter:blur(.2px) brightness(1.2);transform:translateY(-1px) scale(1.015)}}

.lrp-badge-aura-contained-glow{box-shadow:inset 0 0 20px color-mix(in srgb,var(--badge-glow),transparent 28%)!important;}
.lrp-badge-aura-inner-ring:after{content:"";position:absolute;inset:3px;border:1px solid color-mix(in srgb,var(--badge-glow),transparent 25%);border-radius:inherit;z-index:3;pointer-events:none;filter:drop-shadow(0 0 5px var(--badge-glow));}
.lrp-badge-aura-radial-bloom{background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--badge-glow),transparent 52%),transparent 68%)!important;}
