.grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 18px;
    margin-top: 20px;
}

.grid .card {
    background: white;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

.grid .card h2 {
    margin-top: 0;
    color: #53392d;
    font-size: 18px;
    border-bottom: 2px solid #f7e1ca;
    padding-bottom: 8px;
}

.grid .card p {
    margin: 8px 0;
    color: #555;
    font-size: 14px;
}

.highlight {
    margin-top: 24px;
    padding: 20px;
    background: #c66446;
    color: white;
    border-radius: 10px;
    text-align: center;
}

.highlight h2 {
    margin: 0 0 8px;
}

.welcome {
    background: white;
    padding: 22px;
    border-radius: 10px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
    margin-bottom: 18px;
}

.welcome h1 { margin-top: 0; }

.welcome .logout-btn {
    background: #6ca0ac;
    color: white;
    border: none;
    padding: 8px 14px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 14px;
}

.welcome .logout-btn:hover {
    background: #c66446;
}

.perfil {
    background: white;
    padding: 22px;
    border-radius: 10px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

.perfil h3 {
    margin-top: 18px;
    color: #53392d;
}

.resenha-form {
    background: white;
    padding: 22px;
    border-radius: 10px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
    max-width: 560px;
}

.resenha-form input,
.resenha-form textarea {
    width: 100%;
    padding: 10px;
    margin-top: 8px;
    border: 1px solid #ccc;
    border-radius: 6px;
    font-family: inherit;
    font-size: 14px;
}

.resenha-form textarea { min-height: 100px; resize: vertical; }

.resenha-form button {
    margin-top: 12px;
    background: #c66446;
    color: white;
    border: none;
    padding: 10px 16px;
    border-radius: 6px;
    cursor: pointer;
    font-weight: 600;
}

.resenha-form button:hover { background: #a44d34; }
