/* Portal Link Styles */
.portal-link {
    margin-left: 1rem;
}

.crm-link {
    background-color: var(--primary);
    color: var(--white) !important;
    padding: 0.5rem 1rem;
    border-radius: 4px;
    transition: background-color 0.2s;
}

.crm-link:hover {
    background-color: var(--primary-dark);
}

/* Mobile-first responsive styles */
@media (max-width: 768px) {
    .container {
        padding: 0.5rem;
    }

    .grid {
        grid-template-columns: 1fr !important;
        gap: 0.5rem;
    }
    
    .nav-container {
        flex-direction: column;
        padding: 0.5rem;
    }
    
    .nav-menu {
        flex-direction: column;
        width: 100%;
        margin-top: 1rem;
    }
    
    .nav-link {
        padding: 0.5rem;
        text-align: center;
        border-bottom: 1px solid var(--primary-light);
    }
    
    .card {
        margin: 0.5rem 0;
        padding: 1rem;
    }
    
    .table-container {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    
    .table {
        min-width: 600px;
    }
    
    .btn {
        width: 100%;
        margin: 0.25rem 0;
    }
    
    .modal-content {
        width: 95%;
        margin: 2.5%;
        padding: 1rem;
        max-height: 90vh;
        overflow-y: auto;
    }
    
    .chart-legend {
        flex-direction: column;
        align-items: center;
        gap: 0.5rem;
    }

    .form-group {
        margin-bottom: 0.75rem;
    }

    input, select, textarea {
        font-size: 16px; /* Prevents iOS zoom on focus */
    }

    .widget {
        margin-bottom: 0.5rem;
    }

    #dailyPerformanceChart {
        height: 200px;
    }

    .summary-item {
        padding: 0.75rem;
    }

    .task-list {
        max-height: 150px;
    }
}
