/* css/responsive.css */

@media (max-width: 1024px) {
    .container {
        max-width: 100%;
        padding: 0 15px;
    }

    header h1 {
        font-size: 2rem;
    }

    .section-title {
        font-size: 1.5rem;
    }
}

@media (max-width: 768px) {
    body {
        padding: 15px;
    }

    header {
        padding: 25px 20px;
    }

    header h1 {
        font-size: 1.75rem;
        flex-direction: column;
        gap: 10px;
    }

    .subtitle {
        font-size: 1rem;
    }

    .section-card {
        padding: 20px;
    }

    .search-filters {
        flex-direction: column;
    }

    .filter-select,
    .btn-filter {
        width: 100%;
    }

    .article-title {
        font-size: 1.2rem;
    }

    .article-header {
        flex-wrap: wrap;
        gap: 10px;
    }

    .article-actions {
        width: 100%;
        justify-content: flex-end;
    }

    .form-card {
        padding: 20px;
    }

    .form-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }

    .form-header h2 {
        font-size: 1.5rem;
    }

    .form-actions {
        flex-direction: column-reverse;
    }

    .form-actions .btn {
        width: 100%;
        justify-content: center;
    }

    .notification {
        left: 15px;
        right: 15px;
        top: 15px;
    }

    .section-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }

    .section-header .btn {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 480px) {
    body {
        padding: 10px;
    }

    header {
        padding: 20px 15px;
        margin-bottom: 20px;
    }

    header h1 {
        font-size: 1.5rem;
    }

    header h1 svg {
        width: 32px;
        height: 32px;
    }

    .subtitle {
        font-size: 0.9rem;
    }

    .section-card {
        padding: 15px;
    }

    .section-title {
        font-size: 1.3rem;
        margin-bottom: 15px;
    }

    .search-bar {
        padding: 15px;
    }

    .search-input {
        padding: 12px 40px 12px 45px;
        font-size: 0.95rem;
    }

    .search-icon {
        width: 18px;
        height: 18px;
        left: 14px;
    }

    .article-card {
        padding: 15px;
    }

    .article-title {
        font-size: 1.1rem;
    }

    .article-preview {
        font-size: 0.95rem;
    }

    .article-category {
        font-size: 0.8rem;
        padding: 5px 10px;
    }

    .form-card {
        padding: 15px;
    }

    .form-header h2 {
        font-size: 1.3rem;
    }

    .form-control {
        padding: 10px 14px;
        font-size: 0.95rem;
    }

    textarea.form-control {
        min-height: 150px;
    }

    .btn {
        padding: 10px 20px;
        font-size: 0.95rem;
    }

    .empty-state,
    .loading-state,
    .error-state {
        padding: 40px 15px;
    }

    .empty-state svg,
    .error-state svg {
        width: 48px;
        height: 48px;
    }

    .empty-state h3,
    .error-state h3 {
        font-size: 1.2rem;
    }

    .spinner {
        width: 40px;
        height: 40px;
    }
}