
/* ==========================================================
   N5TG V41 — Complete User / Reporter Dashboard Redesign
========================================================== */
.rn-v41-dashboard {
    width:100%!important;
    min-height:100vh!important;
    margin:0!important;
    padding:16px!important;
    display:grid!important;
    grid-template-columns:248px minmax(0,1fr)!important;
    grid-template-rows:auto auto 1fr!important;
    gap:14px!important;
    align-items:start!important;
    background:
        radial-gradient(circle at top right,rgba(228,0,43,.09),transparent 27%),
        #090b11!important;
    color:#fff!important;
}

.rn-v41-dashboard > .rn-page-navigation-bar,
.rn-v41-dashboard > .rn-v24-dashboard-appbar,
.rn-v41-dashboard > .rn-v23-dashboard-dock,
.rn-v41-dashboard > .rn-dashboard-header {
    display:none!important;
}

.rn-v41-sidebar {
    position:sticky!important;
    top:16px!important;
    grid-column:1!important;
    grid-row:1 / span 3!important;
    height:calc(100vh - 32px)!important;
    padding:18px 14px!important;
    display:flex!important;
    flex-direction:column!important;
    border:1px solid rgba(255,255,255,.07)!important;
    border-radius:20px!important;
    background:linear-gradient(180deg,#12151e,#0b0d13)!important;
    box-shadow:0 18px 48px rgba(0,0,0,.22)!important;
    overflow-y:auto!important;
}

.rn-v41-brand {
    min-height:58px!important;
    padding:5px 5px 15px!important;
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    border-bottom:1px solid rgba(255,255,255,.07)!important;
}

.rn-v41-brand-mark {
    flex:0 0 42px!important;
    width:42px!important;
    height:42px!important;
    border-radius:14px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:linear-gradient(145deg,#ef214e,#95001e)!important;
    color:#fff!important;
    font-weight:1000!important;
    box-shadow:0 10px 24px rgba(228,0,43,.22)!important;
}

.rn-v41-brand strong,
.rn-v41-brand small {
    display:block!important;
}

.rn-v41-brand strong {
    font-size:14px!important;
    line-height:1.2!important;
    font-weight:950!important;
}

.rn-v41-brand small {
    margin-top:3px!important;
    color:rgba(255,255,255,.48)!important;
    font-size:9px!important;
}

.rn-v41-nav {
    margin-top:16px!important;
    display:grid!important;
    gap:6px!important;
}

.rn-v41-nav a {
    min-height:46px!important;
    padding:8px 10px!important;
    border:1px solid transparent!important;
    border-radius:13px!important;
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
    color:rgba(255,255,255,.67)!important;
    text-decoration:none!important;
    background:transparent!important;
    transition:background .15s ease,color .15s ease,transform .15s ease!important;
}

.rn-v41-nav a span {
    width:26px!important;
    text-align:center!important;
    font-size:17px!important;
}

.rn-v41-nav a strong {
    font-size:11px!important;
    font-weight:850!important;
}

.rn-v41-nav a:hover,
.rn-v41-nav a.active {
    border-color:rgba(255,255,255,.1)!important;
    background:linear-gradient(145deg,#e4002b,#8f001c)!important;
    color:#fff!important;
    transform:translateX(2px)!important;
}

.rn-v41-sidebar-footer {
    margin-top:auto!important;
    padding-top:16px!important;
}

.rn-v41-sidebar-footer a {
    min-height:40px!important;
    padding:0 12px!important;
    border:1px solid rgba(255,255,255,.1)!important;
    border-radius:12px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:#fff!important;
    text-decoration:none!important;
    background:rgba(255,255,255,.05)!important;
    font-size:10px!important;
    font-weight:850!important;
}

.rn-v41-topbar {
    position:sticky!important;
    top:16px!important;
    z-index:9500!important;
    grid-column:2!important;
    grid-row:1!important;
    min-height:68px!important;
    padding:10px 12px!important;
    border:1px solid rgba(255,255,255,.09)!important;
    border-radius:18px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
    background:rgba(13,15,22,.93)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
    box-shadow:0 16px 40px rgba(0,0,0,.24)!important;
}

.rn-v41-user-chip {
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
}

.rn-v41-user-chip img,
.rn-v41-avatar-fallback {
    flex:0 0 44px!important;
    width:44px!important;
    height:44px!important;
    border-radius:50%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    object-fit:cover!important;
    background:linear-gradient(145deg,#ef214e,#8f001c)!important;
    color:#fff!important;
    font-size:18px!important;
    font-weight:1000!important;
}

.rn-v41-user-chip strong,
.rn-v41-user-chip small {
    display:block!important;
}

.rn-v41-user-chip strong {
    max-width:240px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:14px!important;
    line-height:1.2!important;
    font-weight:950!important;
}

.rn-v41-user-chip small {
    margin-top:3px!important;
    color:rgba(255,255,255,.5)!important;
    font-size:9px!important;
}

.rn-v41-top-actions {
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
}

.rn-v41-top-actions a {
    min-height:38px!important;
    padding:0 13px!important;
    border:1px solid rgba(255,255,255,.11)!important;
    border-radius:11px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:#fff!important;
    text-decoration:none!important;
    background:rgba(255,255,255,.06)!important;
    font-size:10px!important;
    font-weight:850!important;
}

.rn-v41-mobile-dock {
    display:none!important;
}

.rn-v41-dashboard > .rn-dashboard-grid {
    grid-column:2!important;
    grid-row:2 / span 2!important;
    display:grid!important;
    grid-template-columns:repeat(12,minmax(0,1fr))!important;
    gap:14px!important;
    min-width:0!important;
}

.rn-v41-dashboard .rn-dashboard-card {
    grid-column:span 6!important;
    min-width:0!important;
    margin:0!important;
    padding:18px!important;
    border:1px solid rgba(255,255,255,.08)!important;
    border-radius:18px!important;
    background:linear-gradient(145deg,#171a24,#0e1017)!important;
    color:#fff!important;
    box-shadow:0 14px 34px rgba(0,0,0,.18)!important;
    scroll-margin-top:96px!important;
}

.rn-v41-dashboard .rn-dashboard-card:first-child {
    grid-column:span 5!important;
}

.rn-v41-dashboard .rn-dashboard-card:nth-child(2) {
    grid-column:span 7!important;
}

.rn-v41-dashboard .rn-dashboard-card h3 {
    margin:0 0 13px!important;
    color:#fff!important;
    font-size:16px!important;
    line-height:1.25!important;
    font-weight:950!important;
}

.rn-v41-dashboard .rn-dashboard-card p,
.rn-v41-dashboard .rn-dashboard-card li,
.rn-v41-dashboard .rn-dashboard-card label,
.rn-v41-dashboard .rn-dashboard-card .description {
    color:rgba(255,255,255,.68)!important;
}

.rn-v41-dashboard .rn-dashboard-card input,
.rn-v41-dashboard .rn-dashboard-card textarea,
.rn-v41-dashboard .rn-dashboard-card select {
    width:100%!important;
    min-height:42px!important;
    border:1px solid rgba(255,255,255,.1)!important;
    border-radius:12px!important;
    background:#0b0d13!important;
    color:#fff!important;
}

.rn-v41-dashboard .rn-dashboard-btn,
.rn-v41-dashboard button[type="submit"] {
    min-height:42px!important;
    padding:0 16px!important;
    border:0!important;
    border-radius:12px!important;
    background:linear-gradient(145deg,#e4002b,#97001e)!important;
    color:#fff!important;
    font-size:11px!important;
    font-weight:900!important;
    box-shadow:0 9px 22px rgba(228,0,43,.2)!important;
}

.rn-v41-dashboard .rn-dashboard-card table {
    width:100%!important;
    border-collapse:collapse!important;
    border-radius:13px!important;
    overflow:hidden!important;
}

.rn-v41-dashboard .rn-dashboard-card th,
.rn-v41-dashboard .rn-dashboard-card td {
    padding:10px!important;
    border-bottom:1px solid rgba(255,255,255,.07)!important;
    text-align:left!important;
    font-size:10px!important;
}

.rn-v41-dashboard .rn-dashboard-card th {
    color:#fff!important;
    background:rgba(255,255,255,.05)!important;
}

@media (max-width:980px) {
    .rn-v41-dashboard {
        display:block!important;
        padding:8px!important;
        min-height:100vh!important;
        overflow-x:hidden!important;
    }

    .rn-v41-sidebar {
        display:none!important;
    }

    .rn-v41-topbar {
        top:6px!important;
        min-height:62px!important;
        margin-bottom:8px!important;
    }

    .rn-v41-mobile-dock {
        position:sticky!important;
        top:76px!important;
        z-index:9400!important;
        margin-bottom:10px!important;
        padding:7px!important;
        border:1px solid rgba(255,255,255,.08)!important;
        border-radius:14px!important;
        display:flex!important;
        gap:6px!important;
        overflow-x:auto!important;
        background:rgba(11,13,19,.94)!important;
        backdrop-filter:blur(16px)!important;
        -webkit-backdrop-filter:blur(16px)!important;
        scrollbar-width:none!important;
    }

    .rn-v41-mobile-dock::-webkit-scrollbar {
        display:none!important;
    }

    .rn-v41-mobile-dock a {
        flex:0 0 auto!important;
        min-height:36px!important;
        padding:0 12px!important;
        border-radius:10px!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        color:rgba(255,255,255,.65)!important;
        text-decoration:none!important;
        background:rgba(255,255,255,.05)!important;
        font-size:9px!important;
        font-weight:850!important;
    }

    .rn-v41-mobile-dock a.active {
        background:#e4002b!important;
        color:#fff!important;
    }

    .rn-v41-dashboard > .rn-dashboard-grid {
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:10px!important;
    }

    .rn-v41-dashboard .rn-dashboard-card,
    .rn-v41-dashboard .rn-dashboard-card:first-child,
    .rn-v41-dashboard .rn-dashboard-card:nth-child(2) {
        grid-column:1!important;
        padding:15px!important;
        border-radius:16px!important;
        scroll-margin-top:132px!important;
    }
}

@media (max-width:520px) {
    .rn-v41-top-actions a:last-child {
        display:none!important;
    }

    .rn-v41-user-chip strong {
        max-width:150px!important;
    }

    .rn-v41-dashboard .rn-dashboard-card {
        overflow-x:auto!important;
    }
}


/* V43: remove duplicate top Feed/Saved navigation completely. */
.rn-v41-dashboard > .rn-v41-topbar {
    display:none!important;
}

@media (min-width:981px) {
    .rn-v41-dashboard > .rn-dashboard-grid {
        grid-row:1 / span 3!important;
    }
}

@media (max-width:980px) {
    .rn-v41-mobile-dock {
        top:6px!important;
    }
}
