/* ── Shared app sidebar layout ───────────────────────────────── */

.app-layout,
.db-layout {
    display: flex;
    align-items: flex-start;
    min-height: calc(100vh - 60px);
}

.app-layout > .app-sidebar,
.db-layout > .app-sidebar {
    display: none;
    box-sizing: border-box;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 13px;
    line-height: 1.2;
}

.app-layout > .app-content,
.db-layout > .db-content {
    flex: 1;
    min-width: 0;
}

@media (min-width: 900px) {
    .app-layout > .app-sidebar,
    .db-layout > .app-sidebar {
        display: flex !important;
        flex-direction: column;
        width: 220px;
        flex-shrink: 0;
        background: #ffffff;
        border-right: 1px solid #e2e8f0;
        min-height: calc(100vh - 60px);
        padding: 14px 10px;
        gap: 2px;
        position: sticky;
        top: 60px;
        overflow-y: auto;
    }
}

/* ── Nav items ── */
.app-layout > .app-sidebar .app-nav-item,
.app-layout > .app-sidebar .app-nav-item:visited,
.db-layout > .app-sidebar .app-nav-item,
.db-layout > .app-sidebar .app-nav-item:visited {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 9px 11px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 500;
    color: #1f2937 !important;
    text-decoration: none !important;
    transition: background 0.12s, color 0.12s;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    white-space: nowrap;
}

.app-layout > .app-sidebar .app-nav-item:hover,
.db-layout > .app-sidebar .app-nav-item:hover {
    background: #f1f5f9;
    color: #1f2937 !important;
    text-decoration: none !important;
}

.app-layout > .app-sidebar .app-nav-item.active,
.db-layout > .app-sidebar .app-nav-item.active {
    background: #eef3ff;
    color: #357aff !important;
    font-weight: 600;
}

.app-layout > .app-sidebar .app-nav-item i,
.db-layout > .app-sidebar .app-nav-item i {
    font-size: 14px;
    width: 18px;
    text-align: center;
    flex-shrink: 0;
    color: #718096;
}

.app-layout > .app-sidebar .app-nav-item.active i,
.app-layout > .app-sidebar .app-nav-item:hover i,
.db-layout > .app-sidebar .app-nav-item.active i,
.db-layout > .app-sidebar .app-nav-item:hover i {
    color: inherit;
}

.app-layout > .app-sidebar .app-nav-dot,
.db-layout > .app-sidebar .app-nav-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #357aff;
    margin-left: auto;
    flex-shrink: 0;
}

.app-layout > .app-sidebar .app-nav-divider,
.db-layout > .app-sidebar .app-nav-divider {
    height: 1px;
    background: #e2e8f0;
    margin: 6px 4px;
}

/* ── User chip at bottom ── */
.app-layout > .app-sidebar .app-sidebar-user,
.db-layout > .app-sidebar .app-sidebar-user {
    margin-top: auto;
    padding: 9px 10px;
    background: #f8faff;
    border-radius: 10px;
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #e2e8f0;
}

.app-layout > .app-sidebar .app-sidebar-avatar,
.db-layout > .app-sidebar .app-sidebar-avatar {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #f78929, #e7973c);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 700;
    flex-shrink: 0;
    font-family: 'Inter', sans-serif;
}

.app-layout > .app-sidebar .app-sidebar-name,
.db-layout > .app-sidebar .app-sidebar-name {
    font-size: 12px;
    font-weight: 600;
    color: #1f2937;
    font-family: 'Inter', sans-serif;
}
