/* ============================= */
/* Responsive avanzado: Mobile y tablet */
/* ============================= */

/* ============================= */
/* Pantallas pequeñas: Mobile < 640px */
/* ============================= */
@media screen and (max-width: 639px) {
    /* Body */
    body {
        font-size: 14px;
    }

    /* Header */
    header {
        flex-direction: column;
        align-items: flex-start;
        height: auto;
        padding: 10px 15px;
    }

    header h1 {
        font-size: 1.2rem;
        margin-bottom: 5px;
    }

    header .header-right {
        width: 100%;
        justify-content: space-between;
        gap: 8px;
        margin-top: 5px;
    }

    header button {
        padding: 5px 10px;
        font-size: 0.85rem;
    }

    /* Chat container */
    .chat-container {
        flex-direction: column;
        height: calc(100vh - 80px);
        margin: 10px;
    }

    /* Sidebar (oculto en móvil) */
    .chat-sidebar {
        display: none; /* Se oculta para ahorrar espacio */
    }

    /* Chat main ocupa todo */
    .chat-main {
        width: 100%;
    }

    .chat-header {
        flex-direction: column;
        align-items: flex-start;
        padding: 10px 15px;
        font-size: 0.9rem;
    }

    .chat-header-actions {
        margin-top: 5px;
        display: flex;
        gap: 5px;
        width: 100%;
        justify-content: flex-start;
    }

    /* Mensajes */
    .chat-messages {
        padding: 10px;
        gap: 8px;
    }

    .message {
        max-width: 85%;
        padding: 8px 10px;
        font-size: 0.85rem;
    }

    .message-meta {
        font-size: 0.65rem;
    }

    /* Chat input */
    .chat-input {
        padding: 10px 15px;
        gap: 5px;
    }

    .chat-input input {
        font-size: 0.9rem;
        padding: 8px 10px;
    }

    .chat-input button {
        font-size: 0.85rem;
        padding: 8px 12px;
    }

    /* Footer */
    footer {
        font-size: 0.7rem;
        padding: 8px 10px;
    }
}

/* ============================= */
/* Pantallas medianas: Tablet 640px - 1023px */
/* ============================= */
@media screen and (min-width: 640px) and (max-width: 1023px) {
    /* Body */
    body {
        font-size: 15px;
    }

    /* Header */
    header {
        flex-direction: row;
        height: 60px;
        padding: 10px 15px;
    }

    header h1 {
        font-size: 1.3rem;
    }

    header .header-right {
        gap: 10px;
    }

    /* Chat container */
    .chat-container {
        flex-direction: row;
        height: calc(100vh - 80px);
        margin: 15px;
    }

    /* Sidebar */
    .chat-sidebar {
        width: 200px;
        display: block;
    }

    .chat-main {
        flex: 1;
    }

    .chat-header {
        flex-direction: row;
        padding: 10px 15px;
        font-size: 0.95rem;
        justify-content: space-between;
        align-items: center;
    }

    .chat-header-actions {
        display: flex;
        gap: 5px;
    }

    /* Mensajes */
    .chat-messages {
        padding: 15px;
        gap: 10px;
    }

    .message {
        max-width: 75%;
        padding: 10px 12px;
        font-size: 0.9rem;
    }

    .message-meta {
        font-size: 0.7rem;
    }

    /* Chat input */
    .chat-input {
        padding: 10px 15px;
        gap: 8px;
    }

    .chat-input input {
        font-size: 0.95rem;
        padding: 9px 12px;
    }

    .chat-input button {
        font-size: 0.9rem;
        padding: 9px 14px;
    }

    /* Footer */
    footer {
        font-size: 0.75rem;
        padding: 9px 12px;
    }
}

/* ============================= */
/* Pantallas grandes: Desktop >= 1024px */
/* ============================= */
@media screen and (min-width: 1024px) {
    body {
        font-size: 16px;
    }

    header {
        height: 60px;
        padding: 15px 25px;
    }

    .chat-container {
        margin: 20px auto;
        flex-direction: row;
    }

    .chat-sidebar {
        width: 250px;
        display: block;
    }

    .chat-main {
        flex: 1;
    }

    .chat-header {
        padding: 15px 20px;
    }

    .chat-messages {
        padding: 20px;
        gap: 12px;
    }

    .message {
        max-width: 70%;
        padding: 10px 14px;
    }

    .chat-input {
        padding: 12px 20px;
        gap: 10px;
    }

    .chat-input input {
        padding: 10px 14px;
        font-size: 1rem;
    }

    .chat-input button {
        padding: 10px 16px;
        font-size: 1rem;
    }

    footer {
        font-size: 0.85rem;
        padding: 10px 20px;
    }
}
